public function mod($op)
  {
    $dst = clone $this;
    $op = $this->same($op, $this->prec)->truncate();
    if($op->eq(0)) throw new ArithmeticException(sprintf('Division by zero (%s)', json_encode($op)));
    $dst->value = $this->_fix($this->_mod($op));
    return $dst;
  }