anchor.diff:      ?LET(KEModes, ke_modes(),
            #psk_key_exchange_modes{
               ke_modes = KEModes}).
  +
  +pre_shared_key(client_hello) ->
  +    ?LET(OfferedPsks, offered_psks(),
  +         #pre_shared_key_client_hello{
  +            offered_psks = OfferedPsks});
  +pre_shared_key(server_hello) ->
  +    ?LET(SelectedIdentity, selected_identity(),
  +         #pre_shared_key_server_hello{
  +           selected_identity = SelectedIdentity}).
  +
  +selected_identity() ->
  +    rand:uniform(32).
  +
  +offered_psks() ->
  +    ?LET(Size, choose(1,5),
  +         #offered_psks{
  +            identities = psk_identities(Size),
  +            binders = psk_binders(Size)}).
  +
  +psk_identities(Size) ->
  +    psk_identities(Size, []).
  +%%
  +psk_identities(0, Acc) ->
  +    Acc;
  +psk_identities(N, Acc) ->
  +    psk_identities(N - 1, [psk_identity()|Acc]).
  +
  +psk_identity() ->
  +    Len = rand:uniform(32),
  +    Identity = crypto:strong_rand_bytes(Len),
  +    Age = crypto:strong_rand_bytes(4),
  +    #psk_identity{
  +      identity = Identity,
  +      obfuscated_ticket_age = Age}.
  +
  +psk_binders(Size) ->
  +    psk_binders(Size, []).
  +%%
  +psk_binders(0, Acc) ->
  +    Acc;
  +psk_binders(N, Acc) ->
  +    psk_binders(N - 1, [psk_binder()|Acc]).
  +
  +psk_binder() ->
  +    Len = rand:uniform(224) + 31,
  +    crypto:strong_rand_bytes(Len).
  
positive.code:                        srp => SRP
                         %% renegotiation_info => RenegotiationInfo
                        }));
  extensions(?'TLS_v1.3' = Version, server_hello) ->
      ?LET({
            KeyShare,
            %% PreSharedKeys,
            SupportedVersions
           },
           {
            oneof([key_share(server_hello), undefined]),
            %% oneof([pre_shared_keys(),  undefined]),
            oneof([server_hello_selected_version()])
           },
           maps:filter(fun(_, undefined) ->
  
negative.code:            %% ServerCertificateType,
             %% Padding,
             KeyShare,
             PreSharedKey,
             PSKKeyExchangeModes,
             %% EarlyData,
             %% Cookie,
  