anchor.diff:  -spec engine_load(EngineId::unicode:chardata(),
                     PreCmds::[{unicode:chardata(), unicode:chardata()}],
                     PostCmds::[{unicode:chardata(), unicode:chardata()}]) ->
  -    {ok, Engine::term()} | {error, Reason::term()}.
  +    {ok, Engine::engine_ref()} | {error, Reason::term()}.
   engine_load(EngineId, PreCmds, PostCmds) when is_list(PreCmds), is_list(PostCmds) ->
       engine_load(EngineId, PreCmds, PostCmds, engine_get_all_methods()).
   
  
positive.code:     end.
  
  
  -type pk_algs() :: rsa | ecdsa | dss .
  -type pk_key()  :: map() | [integer() | binary()] .
  -type pk_opt()  :: list() | rsa_padding() .
  
  -spec public_encrypt(pk_algs(),  binary(), pk_key(), pk_opt()) -> binary().
  
negative.code:          engine_unload/1,
           engine_list/0
          ]).
  
  -export_type([engine_ref/0,
                key_id/0,
                password/0
               ]).
  
  
  %% Private. For tests.
  