57
generic
   type Key_Type is private;
   -- re-emergence of predefined "=" for KT is OK
   type Element_Type is private;
   with function "<" (Left, Right : Key_Type)
     return Boolean is <>;
   with function "=" (Left, Right : Element_Type)
     return Boolean is <>;
   -- need to pass in "=" for ET, since predefined
   -- equality is not necessarily what we want
package Ada.Containers.Ordered_Maps is ...;