class Money

def as_d(num)

def as_d(num)
  if num.respond_to?(:to_d)
    num.is_a?(Rational) ? num.to_d(self.class.conversion_precision) : num.to_d
  else
    BigDecimal(num.to_s.empty? ? 0 : num.to_s)
  end
end