const FORCE_UPDATE=-0x45dd,FEATURES={
'DMS':0x1,'LEAVE_ROOM':0x2,'V2_CONFIG':0x3,'PINNED_MESSAGES':0x4,'ROOM_RENAME_EVENT':0x5,'REPLY_TO':0x6,'PERMISSION_DOWNGRADE':0x7,'REMOVE_MEMBER':0x8,'MUTE_MEMBER':0x9,'V2_PRIVATE_PROFILE':0xa,'ROOM_LOCKING':0xb,'DISABLE_MEMBERSHIP_EVENTS':0xc,'DISPLAY_NAME_VALIDATION':0xd,'CALL_HANGUP_EVENT':0xe,'CALL_MISSED_EVENT':0xf,'UNREADS':0x10,'PRIVATE_PROFILE_SETTINGS':0x11,'READ_LENGTH':0x12,'REMOVE_MEMBER_V2':0x13,'CHAT_LABELS':0x14,'MULTI_FILES':0x15,'REPORTED_MSG_INDEX':0x16,'REPORTED_MEMBER_INDEX':0x17,'LOCATION_SHARED_EVENT':0x18,'FAVORITE_ROOMS':0x19,'FORWARDED_MESSAGE':0x1a},FEATURES_TO_ABI={
},ABIS=[{'abi':0x1,'features':[FEATURES.LEAVE_ROOM,FEATURES.V2_CONFIG]},{'abi':0x2,'features':[FEATURES.PINNED_MESSAGES,FEATURES.ROOM_RENAME_EVENT,FEATURES.REPLY_TO]},{'abi':0x3,'features':[FEATURES.MUTE_MEMBER]},{'abi':0x4,'features':[FEATURES.DMS]},{'abi':0x5,'features':[FEATURES.PERMISSION_DOWNGRADE]},{'abi':0x6,'features':[FEATURES.REMOVE_MEMBER]},{'abi':0x7,'features':[FEATURES.ROOM_LOCKING]},{'abi':0x8,'features':[FEATURES.V2_PRIVATE_PROFILE]},{'abi':0x9,'features':[]},{'abi':0xa,'features':[]},{'abi':0xb,'features':[]},{'abi':0xc,'features':[]},{'abi':0xd,'features':[]},{'abi':0xe,'features':[]},{'abi':0xf,'features':[FEATURES.UNREADS]},{'abi':0x10,'features':[]},{'abi':0x11,'features':[FEATURES.PRIVATE_PROFILE_SETTINGS,FEATURES.READ_LENGTH,FEATURES.REMOVE_MEMBER_V2,FEATURES.CHAT_LABELS]},{'abi':0x12,'features':[FEATURES.MULTI_FILES]},{'abi':0x13,'features':[FEATURES.REPORTED_MSG_INDEX]},{'abi':0x14,'features':[FEATURES.REPORTED_MEMBER_INDEX],'autoupgrade':!![]},{'abi':0x15,'features':[FEATURES.LOCATION_SHARED_EVENT,FEATURES.FAVORITE_ROOMS,FEATURES.FORWARDED_MESSAGE]},{'abi':0x16,'features':[],'stable':!![]},{'abi':0x17,'features':[]}],MIN_ABIS=new Map();
let STABLE=-(-0x1cc7),EXPERIMENTAL=-(--0x4321),AUTOUPGRADE=-(-0x4297);
for(const {abi,features,stable,autoupgrade}of ABIS){
for(const feature of features){
MIN_ABIS.set(feature,abi);
}
if(autoupgrade)AUTOUPGRADE=abi;
if(stable)STABLE=abi;
EXPERIMENTAL=abi;
}
for(const [key,feat]of Object.entries(FEATURES)){
if(!MIN_ABIS.has(feat))continue;
FEATURES_TO_ABI[key]=MIN_ABIS.get(feat);
}
function isFeatureSupported(_0x53b7e1,_0xe90aae){
_0x2b340e={
_0x37fab2:0x15b,_0x5528bf:0x36e},_0x4da9c1=MIN_ABIS.get(_0xe90aae);
if(!_0x4da9c1)return![];
return _0x4da9c1<=_0x53b7e1;
}
module.exports={
'isFeatureSupported':isFeatureSupported,'FEATURES_TO_ABI':FEATURES_TO_ABI,'FEATURES':FEATURES,'STABLE':STABLE,'AUTOUPGRADE':AUTOUPGRADE,'EXPERIMENTAL':EXPERIMENTAL,'FORCE_UPDATE':FORCE_UPDATE}
;