code: def new_transaction(
          vm: VM,
          from_: Address,
          to: Address,
          amount: int=0,
          private_key: PrivateKey=None,
          gas_price: int=10,
          gas: int=100000,
          data: bytes=b'') -> BaseTransaction:
      
      nonce = vm.state.get_nonce(from_)
      tx = vm.create_unsigned_transaction(
          nonce=nonce,
          gas_price=gas_price,
          gas=gas,
          to=to,
          value=amount,
          data=data,
      )
  
      return tx.as_signed_transaction(private_key)
docs: Create and return a transaction sending amount from <from_> to <to>.
  
      The transaction will be signed with the given private key.