public function equals($value)
    {
        if (is_object($value) && get_class($value) == get_class($this)) {
            $equals = $value->value() === $this->value();
        } else {
            $equals = $this->value() === ((string)$value);
        }
        
        return $equals;
    }