Sign a given input in a transaction, given the previous output script and previous output amount.
    Different blockchains can require additional fields; pass thse in **blockchain_opts.

    Return the serialized tx with the given input signed on success
    Raise on error

def tx_sign_input(tx_hex, idx, prevout_script, prevout_amount, private_key_info, blockchain='bitcoin', **blockchain_opts):
    """
    Sign a given input in a transaction, given the previous output script and previous output amount.
    Different blockchains can require additional fields; pass thse in **blockchain_opts.

    Return the serialized tx with the given input signed on success
    Raise on error
    """
    if blockchain == 'bitcoin':
        return btc_tx_sign_input(tx_hex, idx, prevout_script, prevout_amount, private_key_info, **blockchain_opts)
    else:
        raise ValueError('Unknown blockchain "{}"'.format(blockchain))