<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def CreateSignatureContract(publicKey):
 """ Create a signature contract. Args: publicKey (edcsa.Curve.point):
 e.g. KeyPair.PublicKey. Returns: neo.SmartContract.Contract: a Contract instance. """

        script = Contract.CreateSignatureRedeemScript(publicKey)
        params = b'\x00'
        encoded = publicKey.encode_point(True)
        pubkey_hash = Crypto.ToScriptHash(encoded, unhex=True)

        return Contract(script, params, pubkey_hash)