func UnmarshalSecp256k1PublicKey(data []byte) (PubKey, error) {
	k, err := btcec.ParsePubKey(data, btcec.S256())
	if err != nil {
		return nil, err
	}

	return (*Secp256k1PublicKey)(k), nil
}
func UnmarshalSecp256k1PublicKey(data []byte) (PubKey, error) {
	k, err := btcec.ParsePubKey(data, btcec.S256())
	if err != nil {
		return nil, err
	}

	return (*Secp256k1PublicKey)(k), nil
}
func UnmarshalSecp256k1PublicKey ( data [ ] byte ) ( PubKey , error ) { k , err := btcec . ParsePubKey ( data , btcec . S256 ( ) ) if err != nil { return nil , err } return ( * Secp256k1PublicKey ) ( k ) , nil }
// UnmarshalSecp256k1PublicKey returns a public key from bytes
UnmarshalSecp256k1PublicKey returns a public key from bytes