code: func (z *Dec) GobDecode(buf []byte) error {
  	if len(buf) == 0 {
  		return fmt.Errorf("Dec.GobDecode: no data")
  	}
  	b := buf[len(buf)-1]
  	if b != decGobVersion {
  		return fmt.Errorf("Dec.GobDecode: encoding version %d not supported", b)
  	}
  	l := len(buf) - scaleSize - 1
  	err := z.UnscaledBig().GobDecode(buf[:l])
  	if err != nil {
  		return err
  	}
  	z.SetScale(scale(buf[l : l+scaleSize]))
  	return nil
  }
docs: // GobDecode implements the gob.GobDecoder interface.