func NewPublic(x,y []byte) (*ecdsa.PublicKey) {
	return &ecdsa.PublicKey{ Curve: curve(len(x)), 
							 X:new(big.Int).SetBytes(x), 
							 Y:new(big.Int).SetBytes(y) }
}
func NewPublic(x,y []byte) (*ecdsa.PublicKey) {
	return &ecdsa.PublicKey{ Curve: curve(len(x)), 
							 X:new(big.Int).SetBytes(x), 
							 Y:new(big.Int).SetBytes(y) }
}
// NewPublic constructs ecdsa.PublicKey from given (X,Y)