anchor.diff:  	 {'AEAD_AES_256_GCM', [{ciphers,aes_256_gcm}]},
   	 {'AEAD_AES_128_GCM', [{ciphers,aes_128_gcm}]},
   	 {'aes128-cbc',       [{ciphers,aes_128_cbc}]},
  -	 {'3des-cbc',         [{ciphers,des3_cbc}]}
  +	 {'3des-cbc',         [{ciphers,des_ede3_cbc}]}
   	]
          ));
   supported_algorithms(mac) ->
  
positive.code: decrypt(#ssh{decrypt = 'chacha20-poly1305@openssh.com',
               decrypt_keys = {K1,_K2},
               recv_sequence = Seq} = Ssh, {length,EncryptedLen}) ->
      PacketLenBin = crypto:crypto_one_shot(chacha20, K1, <<0:8/unit:8, Seq:8/unit:8>>, EncryptedLen, false),
      {Ssh, PacketLenBin};
  
  decrypt(#ssh{decrypt = 'chacha20-poly1305@openssh.com',
  
negative.code:              recv_sequence = Seq} = Ssh, {AAD,Ctext,Ctag}) ->
      %% The length is already decoded and used to divide the input
      %% Check the mac (important that it is timing-safe):
      PolyKey = crypto:crypto_one_time(chacha20, K2, <<0:8/unit:8,Seq:8/unit:8>>, <<0:32/unit:8>>, false),
      case equal_const_time(Ctag, crypto:poly1305(PolyKey, <<AAD/binary,Ctext/binary>>)) of
          true ->
              %% MAC is ok, decode
              IV2 = <<1:8/little-unit:8, Seq:8/unit:8>>,
              PlainText = crypto:crypto_one_time(chacha20, K2, IV2, Ctext, false),
              {Ssh, PlainText};
          false ->
             {Ssh,error}
  