anchor.diff:  %%
   client_hello(?'TLS_v1.3' = Version) ->
       #client_hello{session_id = session_id(),
  -		  client_version = ?'TLS_v1.2',
  -		  cipher_suites = cipher_suites(Version),
  -		  compression_methods = compressions(Version),
  -		  random = client_random(Version),
  -		  extensions = client_hello_extensions(Version)    
  +                  client_version = ?'TLS_v1.2',
  +                  cipher_suites = cipher_suites(Version),
  +                  compression_methods = compressions(Version),
  +                  random = client_random(Version),
  +                  extensions = client_hello_extensions(Version)
                    };
   client_hello(Version) ->
       #client_hello{session_id = session_id(),
  
positive.code:                         %% padding => Padding,
                          key_share => KeyShare,
                          %% pre_shared_key => PreSharedKey,
                          %% psk_key_exhange_modes => PSKKeyExchangeModes,
                          %% early_data => EarlyData,
                          %% cookie => Cookie,
                          client_hello_versions => SupportedVersions,
  
negative.code:     R = rand:uniform(length(Pool)),
      G = lists:nth(R, Pool),
      group_list(N - 1, Pool -- [G], [G|Acc]).
  
  
  ke_modes() ->
      oneof([[psk_ke],[psk_dhe_ke],[psk_ke,psk_dhe_ke]]).
  
  psk_key_exchange_modes() ->
      ?LET(KEModes, ke_modes(),
           #psk_key_exchange_modes{
              ke_modes = KEModes}).
  