<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def Allowance(self, wallet, owner_addr, requestor_addr):
 """ Return the amount of tokens that the `requestor_addr` account can transfer from the `owner_addr` account. Args: wallet (neo.Wallets.Wallet):
 a wallet instance. owner_addr (str):
 public address of the account to transfer the given amount from. requestor_addr (str):
 public address of the account that requests the transfer. Returns: tuple: InvocationTransaction: the transaction. int: the transaction fee. list: the neo VM evaluation stack results. """

        invoke_args = [self.ScriptHash.ToString(), 'allowance',
                       [PromptUtils.parse_param(owner_addr, wallet), PromptUtils.parse_param(requestor_addr, wallet)]]

        tx, fee, results, num_ops, engine_success = TestInvokeContract(wallet, invoke_args, None, True)

        return tx, fee, results