function(self, other){
    if(other.__class__ === $B.long_int){
        return $B.long_int.__lt__(other, $B.long_int.$factory(self))
    }
    if(_b_.isinstance(other, int)){
        other = int_value(other)
        return self.valueOf() > other.valueOf()
    }else if(_b_.isinstance(other, _b_.float)){
        return self.valueOf() > other.valueOf()
    }else if(_b_.isinstance(other, _b_.bool)) {
      return self.valueOf() > _b_.bool.__hash__(other)
    }
    if(_b_.hasattr(other, "__int__") || _b_.hasattr(other, "__index__")){
       return int.__gt__(self, $B.$GetInt(other))
    }

    return _b_.NotImplemented
}