code: func marshalSignature(r, s *big.Int) ([]byte, error) {
  	sig := signature{
  		R: r,
  		S: s,
  	}
  
  	bs, err := asn1.Marshal(sig)
  	if err != nil {
  		return nil, err
  	}
  
  	return bs, nil
  }
docs: // marhalSignature returns ASN.1 encoded bytes for the given integers,
  // suitable for PEM encoding.