code: func (ec *EthereumClient) GetTransactionSender(ctx *Context, tx *Transaction, blockhash *Hash, index int) (sender *Address, _ error) {
  	addr, err := ec.client.TransactionSender(ctx.context, tx.tx, blockhash.hash, uint(index))
  	return &Address{addr}, err
  }
docs: // GetTransactionSender returns the sender address of a transaction. The transaction must
  // be included in blockchain at the given block and index.