Typemaps
    
     · required attributes are automatically inferred, becoming either
       dependencies (on types) or parameters (if the type doesn't exist
       in the typemap)
     · non-required attributes can still be satisfied by parameters