code: func (a int64Amount) AsScaledInt64(scale Scale) (result int64, ok bool) {
  	if a.scale < scale {
  		result, _ = negativeScaleInt64(a.value, scale-a.scale)
  		return result, true
  	}
  	return positiveScaleInt64(a.value, a.scale-scale)
  }
docs: // AsScaledInt64 returns an int64 representing the value of this amount at the specified scale,
  // rounding up, or false if that would result in overflow. (1e20).AsScaledInt64(1) would result
  // in overflow because 1e19 is not representable as an int64. Note that setting a scale larger
  // than the current value may result in loss of precision - i.e. (1e-6).AsScaledInt64(0) would
  // return 1, because 0.000001 is rounded up to 1.