code: def load_from_bytecode(
          self, code: str, bin_runtime: bool = False, address: Optional[str] = None
      ) -> Tuple[str, EVMContract]:
          
          if address is None:
              address = util.get_indexed_address(0)
          if bin_runtime:
              self.contracts.append(
                  EVMContract(
                      code=code,
                      name="MAIN",
                      enable_online_lookup=self.enable_online_lookup,
                  )
              )
          else:
              self.contracts.append(
                  EVMContract(
                      creation_code=code,
                      name="MAIN",
                      enable_online_lookup=self.enable_online_lookup,
                  )
              )
          return address, self.contracts[-1]
docs: Returns the address and the contract class for the given bytecode
          :param code: Bytecode
          :param bin_runtime: Whether the code is runtime code or creation code
          :param address: address of contract
          :return: tuple(address, Contract class)