anchor.diff:      ?assertEqual(PubKey, aect_call:caller_pubkey(InitCall)),
       ?assertEqual(aetx:nonce(Tx), aect_call:caller_nonce(InitCall)),
       ?assertEqual(aect_create_tx:gas_price(aetx:tx(Tx)), aect_call:gas_price(InitCall)),
  +    ?assertEqual(aect_create_tx:gas_limit(aetx:tx(Tx)), aect_call:gas_used(InitCall)), %% Gas exhausted.
       %% Check that the created init call has the correct details not from the contract create tx
       ?assertEqual(ContractKey, aect_call:contract_pubkey(InitCall)), %% Contract not created.
  -    ?assertMatch(X when X > 0, aect_call:gas_used(InitCall)),
       ?assertEqual(error, aect_call:return_type(InitCall)),
       _ = aect_call:return_value(InitCall),
   
  
positive.code: %% Check behaviour of contract call error - especially re value / amount.
  call_contract_error_value(_Cfg) ->
      F = 1,
      DefaultOpts = #{fee => F, gas_price => 0, amount => 0},
      Bal = fun(A, S) -> {B, S} = account_balance(A, S), B end,
      %% Initialization.
      state(aect_test_utils:new_state()),
  
negative.code:     %% returned to the miner.
      ?assertMatch(D when D > 0, aect_create_tx:deposit(aetx:tx(Tx))), %% Check on test data.
      ?assertMatch(A when A > 0, aect_create_tx:amount(aetx:tx(Tx))), %% Check on test data.
      ?assertMatch(F when F > 0, aect_create_tx:fee(aetx:tx(Tx))), %% Check on test data.
      ?assertMatch(G when G > 0, aect_create_tx:gas_limit(aetx:tx(Tx))), %% Check on test data.
      ?assertMatch(P when P > 0, aect_create_tx:gas_price(aetx:tx(Tx))), %% Check on test data.
      ?assertEqual(aec_accounts:balance(aect_test_utils:get_account(PubKey, S1))
                   - aect_create_tx:fee(aetx:tx(Tx))
                   - aect_create_tx:gas_price(aetx:tx(Tx)) * aect_call:gas_used(InitCall),
  