public function equals(Decimal $b, $scale = null)
{
self::paramsValidation($b, $scale);
if ($this === $b) {
return true;
} elseif ($b->isInfinite()) {
return false;
} else {
$cmp_scale = $scale !== null ? $scale : max($this->scale, $b->scale);
return bccomp(self::innerRound($this->value, $cmp_scale), self::innerRound($b->value, $cmp_scale), $cmp_scale) == 0;
}
}