@pytest.mark.parametrize("opcode",[Op.EXTCALL,Op.EXTDELEGATECALL,Op.EXTSTATICCALL,],)deftest_eof_calls_legacy_sstore(state_test:StateTestFiller,pre:Alloc,sender:EOA,opcode:Op,):"""Test EOF contracts calling Legacy contracts that use SSTORE."""env=Environment()destination_contract_code=Op.SSTORE(slot_caller,Op.CALLER())+Op.STOPdestination_contract_address=pre.deploy_contract(destination_contract_code)caller_contract=Container(sections=[Section.Code(code=Op.SSTORE(slot_call_result,opcode(address=destination_contract_address))+Op.SSTORE(slot_code_worked,value_code_worked)+Op.STOP,)])calling_contract_address=pre.deploy_contract(caller_contract)tx=Transaction(sender=sender,to=Address(calling_contract_address),gas_limit=50000000,)calling_storage={slot_code_worked:value_code_worked,# type: ignoreslot_call_result:EXTCALL_SUCCESS,# type: ignore}destination_storage={}ifopcode==Op.EXTCALL:destination_storage[slot_caller]=calling_contract_addresselifopcode==Op.EXTDELEGATECALL:# EOF delegate call to legacy is a light failure by rulecalling_storage[slot_call_result]=EXTCALL_REVERTelifopcode==Op.EXTSTATICCALL:calling_storage[slot_call_result]=EXTCALL_FAILUREpost={calling_contract_address:Account(storage=calling_storage),destination_contract_address:Account(storage=destination_storage),}state_test(env=env,pre=pre,post=post,tx=tx,)