@infernus/core 0.12.1 → 0.12.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bundle.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import da from"node:util";import{encodingExists as ca,encode as _a,decode as ha}from"iconv-lite";function it(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null?Object.prototype.toString.call(e)==="[object Object]":!1}function ua(e,t){const a={},i=Object.keys(e);for(let n=0;n<i.length;n++){const r=i[n],s=e[r];a[t(s,r,e)]=s}return a}function be(e){return e==="__proto__"}function Pe(e,t){const a=Object.keys(t);for(let i=0;i<a.length;i++){const n=a[i];if(be(n))continue;const r=t[n],s=e[n];Array.isArray(r)?Array.isArray(s)?e[n]=Pe(s,r):e[n]=Pe([],r):it(r)?it(s)?e[n]=Pe(s,r):e[n]=Pe({},r):(s===void 0||r!==void 0)&&(e[n]=r)}return e}function ma(e,t){const a={...e};for(let i=0;i<t.length;i++){const n=t[i];delete a[n]}return a}const pa=new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+","gu");function fa(e){return Array.from(e.match(pa)??[])}function Me(e){return fa(e).map(a=>a.toLowerCase()).join("_")}function ga(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}function Pa(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function Sa(e){const t=[],a=e.length;if(a===0)return t;let i=0,n="",r="",s=!1;for(e.charCodeAt(0)===46&&(t.push(""),i++);i<a;){const l=e[i];r?l==="\\"&&i+1<a?(i++,n+=e[i]):l===r?r="":n+=l:s?l==='"'||l==="'"?r=l:l==="]"?(s=!1,t.push(n),n=""):n+=l:l==="["?(s=!0,n&&(t.push(n),n="")):l==="."?n&&(t.push(n),n=""):n+=l,i++}return n&&t.push(n),t}function Ve(e,t,a){if(e==null)return a;switch(typeof t){case"string":{if(be(t))return a;const i=e[t];return i===void 0?ga(t)?Ve(e,Sa(t),a):a:i}case"number":case"symbol":{typeof t=="number"&&(t=Pa(t));const i=e[t];return i===void 0?a:i}default:{if(Array.isArray(t))return ya(e,t,a);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),be(t))return a;const i=e[t];return i===void 0?a:i}}}function ya(e,t,a){if(t.length===0)return a;let i=e;for(let n=0;n<t.length;n++){if(i==null||be(t[n]))return a;i=i[t[n]]}return i===void 0?a:i}function Ia(e){return e instanceof Buffer}class I{constructor(t,a){this.defaultLocale=t,this.locales=a,this.defaultLocale=Me(t),this.locales=I.snakeLocaleKeys(a)}addLocales=t=>{Pe(this.locales,I.snakeLocaleKeys(t))};removeLocales=(...t)=>{this.locales=ma(this.locales,t)};$t=(t,a,i=this.defaultLocale)=>{const n=this.locales[Me(i)],r=Ve(this.locales[this.defaultLocale],t),s=Ve(n,t,r);if(s===void 0)throw new Error(`[i18n]: cannot find ${i}["${t}"]`);if(typeof s!="string")return JSON.stringify(s);let l=s;return a&&a.length&&(l=da.format(l,...a)),l};static isValidate(t){if(!ca(t))throw new Error(`[i18n]: unknown charset ${t}`)}static encodeToBuf(t,a){return I.isValidate(a),[..._a(t,a),0]}static decodeFromBuf(t,a="utf8"){I.isValidate(a);const i=Ia(t)?t:Buffer.from(I.getValidStr(t));return ha(i,a)}static getValidStr(t){return t.indexOf(0)===-1?t:t.slice(0,t.indexOf(0))}static snakeLocaleKeys(t){return ua(t,(a,i)=>Me(i))}static convertSpecialChar(t){const a={\u00E0:"\x97",\u00E1:"\x98",\u00E2:"\x99",\u00E4:"\x9A",\u00C0:"\x80",\u00C1:"\x81",\u00C2:"\x82",\u00C4:"\x83",\u00E8:"\x9D",\u00E9:"\x9E",\u00EA:"\x9F",\u00EB:"\xA0",\u00C8:"\x86",\u00C9:"\x87",\u00CA:"\x88",\u00CB:"\x89",\u00EC:"\xA1",\u00ED:"\xA2",\u00EE:"\xA3",\u00EF:"\xA4",\u00CC:"\x8A",\u00CD:"\x8B",\u00CE:"\x8C",\u00CF:"\x8D",\u00F2:"\xA5",\u00F3:"\xA6",\u00F4:"\xA7",\u00F6:"\xA8",\u00D2:"\x8E",\u00D3:"\x8F",\u00D4:"\x90",\u00D6:"\x91",\u00F9:"\xA9",\u00FA:"\xAA",\u00FB:"\xAB",\u00FC:"\xAC",\u00D9:"\x92",\u00DA:"\x93",\u00DB:"\x94",\u00DC:"\x95",\u00F1:"\xAE",\u00D1:"\xAD","\xA1":"@","\xBF":"\xAF","`":"\xB1"};return t.split("").map(i=>i in a?a[i]:i).join("")}}const F=new Map,nt=new Map;function Ea(e,t){return typeof e=="boolean"?+e:typeof e=="number"&&!isNaN(e)?e:+t}function rt(e,t,...a){const{defaultValue:i=!0,name:n,beforeEach:r,afterEach:s,throwOnError:l=!1}=e,o=F.get(n);if(!o||!o.length)return+i;const d=r?r(...a):{},c=[];let u=t;const p=g=>{if(u++,u<o.length){try{g&&Object.assign(d,g);const f={next:p,defaultValue:i,...d},y=o[u](f);return y instanceof Promise?(c.push(y),i):y}catch(f){const y=`executing event [name:${n},index:${u}] error:
2
- ${f}`;if(l)throw{error:f,message:y};console.log(y)}return i}return s&&(c.length?Promise.allSettled(c).then(()=>s(d)):s(d)),i};return Ea(p(),i)}function h(e){const{name:t,identifier:a,isNative:i=!0}=e;if(F.has(t)){const l=`event [name:${t}] error: already defined.`;throw new Error(l)}function n(...l){if(l.length===1&&typeof l[0]=="object"&&l[0].__trigger__){const o=l[0];let d=-1;if(o.skipToNext){const c=F.get(t);if(c&&c.length){const u=c.indexOf(o.skipToNext);u>-1&&(d=u)}}return rt(e,d,...o.args)}return rt(e,-1,...l)}function r(l,o=!1){F.has(t)||F.set(t,[]);const d=F.get(t),c=(o?d.unshift(l):d.push(l))-1;return()=>{const u=F.get(t);if(!u)return;const p=u.length-1,g=p<c?p:c;for(let f=g;f>=0;f--)if(u[f]===l){u.splice(f,1);break}return u.length===0&&F.delete(t),u.length}}const s=[r,n];return i&&(typeof a<"u"&&samp.registerEvent(t,a),samp.on(t,n)),nt.set(t,n),s}function Aa(e){return nt.get(e)}function Ca(e){return Object.assign(e,{__trigger__:!0})}const Na=e=>!!samp.callNative("IsValidNickName","s",e),Ta=(e,t)=>{samp.callNative("AllowNickNameCharacter","ii",e,t)},Da=e=>!!samp.callNative("IsNickNameCharacterAllowed","i",e),va=(e,t)=>!!samp.callNative("AddServerRule","ss",e,t),wa=(e,t)=>!!samp.callNative("SetServerRule","ss",e,t),Ra=e=>!!samp.callNative("IsValidServerRule","s",e),La=e=>!!samp.callNative("RemoveServerRule","s",e),ba=e=>{samp.callNative("AllowAdminTeleport","i",e)},Oa=()=>!!samp.callNative("IsAdminTeleportAllowed",""),Ga=e=>{samp.callNative("AllowInteriorWeapons","i",e)},Fa=()=>!!samp.callNative("AreInteriorWeaponsAllowed",""),Ba=()=>!!samp.callNative("AreAllAnimationsEnabled",""),xa=e=>{samp.callNative("EnableAllAnimations","i",e)},ka=e=>{const[t,a]=samp.callNative("GetConsoleVarAsString","sAi",e,64);return{consoleVarBuf:t,ret:a}},Ma=e=>samp.callNative("GetConsoleVarAsInt","s",e),Va=e=>!!samp.callNative("GetConsoleVarAsBool","s",e),Ha=()=>samp.callNative("GetWeather",""),Ua=e=>samp.callNative("GetServerRuleFlags","s",e),Wa=(e,t)=>!!samp.callNative("SetServerRuleFlags","si",e,t),ja=e=>!!samp.callNative("SetModeRestartTime","f",e),Ka=()=>samp.callNativeFloat("GetModeRestartTime",""),Za=(e,t,a)=>samp.callNative("GameTextForAll","aii",e,t,a),Xa=e=>{samp.callNative("HideGameTextForAll","i",e)},Ya=(e,t,a)=>samp.callNative("SendDeathMessage","iii",e,t,a),za=()=>samp.callNative("GetMaxPlayers",""),He=(e,t,a)=>Math.sqrt(e*e+t*t+a*a),$a=e=>samp.callNative("SetGameModeText","s",e),Ja=e=>samp.callNative("ShowNameTags","i",e),Qa=e=>samp.callNative("ShowPlayerMarkers","i",e),qa=e=>samp.callNative("SetWorldTime","i",e),ei=()=>samp.callNative("GetWorldTime",""),ti=()=>!!samp.callNative("EnableVehicleFriendlyFire",""),ai=e=>samp.callNative("SetWeather","i",e),ii=()=>samp.callNativeFloat("GetGravity",""),ni=e=>samp.callNative("SetGravity","f",e),ri=(e,t,a,i,n)=>samp.callNative("CreateExplosion","fffif",e,t,a,i,n),si=e=>samp.callNative("EnableZoneNames","i",e),li=()=>!!samp.callNative("UsePlayerPedAnims",""),oi=()=>!!samp.callNative("DisableInteriorEnterExits",""),di=e=>samp.callNative("SetNameTagDrawDistance","f",e),ci=()=>samp.callNative("DisableNameTagLOS",""),_i=e=>samp.callNative("LimitGlobalChatRadius","f",e),hi=e=>samp.callNative("LimitPlayerMarkerRadius","f",e),ui=(e,t)=>samp.callNative("ConnectNPC","ss",e,t),mi=()=>samp.callNative("GetServerTickRate",""),pi=e=>samp.callNative("GetAnimationName","iSiSi",e,32,32),fi=e=>!!samp.callNative("EnableStuntBonusForAll","i",e),gi=e=>{samp.callNative("ToggleChatTextReplacement","i",e)},Pi=()=>!!samp.callNative("ChatTextReplacementToggled",""),Si=e=>samp.callNative("GetWeaponSlot","i",e),yi=e=>{const[t,a]=samp.callNative("GetWeaponName","iSi",e,32);return{name:t,ret:a}},Ii=()=>samp.callNative("GetAvailableClasses",""),Ei=e=>{const t=samp.callNative("GetPlayerClass","iIIFFFFIIIIII",e),[a,i=0,n=0,r=0,s=0,l=0,o=0,d=0,c=0,u=0,p=0,g=0,f]=t;return{teamId:a,modelId:i,spawnX:n,spawnY:r,spawnZ:s,zAngle:l,weapon1:o,weapon1Ammo:d,weapon2:c,weapon2Ammo:u,weapon3:p,weapon3Ammo:g,ret:f}},Ai=(e,t,a,i,n,r,s,l,o,d,c,u,p)=>!!samp.callNative("EditPlayerClass","iiiffffiiiiii",e,t,a,i,n,r,s,l,o,d,c,u,p),Ci=e=>samp.callNative("SetTeamCount","i",e),Ni=(e,t,a,i,n,r,s,l,o,d,c)=>samp.callNative("AddPlayerClass","iffffiiiiii",e,t,a,i,n,r,s,l,o,d,c),Ti=(e,t,a,i,n,r,s,l,o,d,c,u)=>samp.callNative("AddPlayerClassEx","iiffffiiiiii",e,t,a,i,n,r,s,l,o,d,c,u),Di=(e,t,a,i,n,r,s,l,o,d,c,u,p)=>!!samp.callNative("SetSpawnInfo","iiiffffiiiiii",e,t,a,i,n,r,s,l,o,d,c,u,p),vi=e=>!!samp.callNative("SpawnPlayer","i",e),wi=e=>{const[t,a=0,i=0,n=0,r=0,s=0,l=0,o=0,d=0,c=0,u=0,p=0,g]=samp.callNative("GetSpawnInfo","iIIFFFFIIIIII",e);return{teamId:t,modelId:a,spawnX:i,spawnY:n,spawnZ:r,zAngle:s,weapon1:l,weapon1Ammo:o,weapon2:d,weapon2Ammo:c,weapon3:u,weapon3Ammo:p,ret:g}},Ri=e=>samp.callNative("NetStats_GetConnectedTime","i",e),Li=e=>samp.callNative("NetStats_MessagesReceived","i",e),bi=e=>samp.callNative("NetStats_BytesReceived","i",e),Oi=e=>samp.callNative("NetStats_MessagesSent","i",e),Gi=e=>samp.callNative("NetStats_BytesSent","i",e),Fi=e=>samp.callNative("NetStats_MessagesRecvPerSecond","i",e),Bi=e=>samp.callNativeFloat("NetStats_PacketLossPercent","i",e),xi=e=>samp.callNative("NetStats_ConnectionStatus","i",e),ki=e=>{const[t,a]=samp.callNative("NetStats_GetIpPort","iSi",e,134);return{ipPort:t,ret:a}},Mi=e=>!!samp.callNative("IsPlayerAdmin","i",e),Vi=(e,t)=>!!samp.callNative("SetPlayerAdmin","ii",e,t),Hi=e=>!!samp.callNative("Kick","i",e),Ui=e=>!!samp.callNative("Ban","i",e),Wi=e=>{const[t,a]=samp.callNative("GetPlayerNetworkStats","iSi",e,1024);return{stats:t,ret:a}},ji=()=>{const[e,t]=samp.callNative("GetNetworkStats","Si",1024);return{stats:e,ret:t}},Ki=(e,t)=>samp.callNative("BlockIpAddress","si",e,t),Zi=e=>samp.callNative("UnBlockIpAddress","s",e),Xi=(e,t)=>{const[a,i]=samp.callNative("gpci","iAi",e,41);return{val:I.decodeFromBuf(I.getValidStr(a),t),ret:i}},Yi=(e,t,a,i,n)=>samp.callNative("SendClientCheck","iiiii",e,t,a,i,n),zi=()=>{samp.callNative("ClearBanList","")},$i=e=>!!samp.callNative("IsBanned","s",e),Ji=e=>samp.callNative("GetPlayerRawIp","i",e),Qi=e=>{const[t,a]=samp.callNative("GetPlayerIp","iSi",e,128);return{ip:t,ret:a}},qi=e=>{const[t,a]=samp.callNative("GetPlayerVersion","iSi",e,24);return{version:t,ret:a}},E=e=>{if(typeof e=="number")return e;if(typeof+e=="number"&&!isNaN(+e))return+e;if(e.charAt(0)==="#")return e.length===4?parseInt(e.charAt(1)+e.charAt(1)+e.charAt(2)+e.charAt(2)+e.charAt(3)+e.charAt(3)+"FF",16):e.length===7?parseInt(e.slice(1,e.length)+"FF",16):e.length===9?parseInt(e.slice(1,e.length),16):255;const t=(e.match(/([0-9])+/g)||[]).map(i=>parseInt(i,10));if(t.length!==4&&t.length!==3)return 255;t.length===3?t.push(255):t[3]=t[3]<1?Math.floor(t[3]*255):255;let a=0;return t.reverse().forEach((i,n)=>{i!==0&&(a+=Math.pow(16,n*2)*i)}),a},en=(e,t)=>!!samp.callNative("TogglePlayerWidescreen","ii",e,t),tn=e=>!!samp.callNative("IsPlayerWidescreenToggled","i",e),an=(e,t)=>samp.callNative("GetPlayerSkillLevel","ii",e,t),nn=e=>samp.callNative("GetPlayerWeather","i",e),rn=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("GetPlayerWorldBounds","iFFFF",e);return{xMax:t,xMin:a,yMax:i,yMin:n,ret:r}},sn=e=>samp.callNativeFloat("GetPlayerZAim","i",e),ln=e=>{const[t=0,a=0,i=0,n]=samp.callNative("GetPlayerSurfingOffsets","iFFF",e);return{fOffsetX:t,fOffsetY:a,fOffsetZ:i,ret:n}},on=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("GetPlayerRotationQuat","iFFFF",e);return{w:t,x:a,y:i,z:n,ret:r}},dn=e=>samp.callNative("GetPlayerDialogID","i",e),cn=e=>samp.callNative("GetPlayerSpectateID","i",e),_n=e=>samp.callNative("GetPlayerSpectateType","i",e),hn=(e,t)=>!!samp.callNative("SetPlayerGravity","if",e,t),un=e=>samp.callNativeFloat("GetPlayerGravity","i",e),mn=e=>!!samp.callNative("IsPlayerSpawned","i",e),pn=e=>!!samp.callNative("IsPlayerControllable","i",e),fn=e=>!!samp.callNative("IsPlayerCameraTargetEnabled","i",e),gn=(e,t)=>!!samp.callNative("TogglePlayerGhostMode","ii",e,t),Pn=e=>!!samp.callNative("GetPlayerGhostMode","i",e),Sn=e=>samp.callNative("GetPlayerBuildingsRemoved","i",e),yn=(e,t)=>!!samp.callNative("RemovePlayerWeapon","ii",e,t),In=e=>!!samp.callNative("HidePlayerDialog","i",e),En=e=>!!samp.callNative("IsPlayerUsingOfficialClient","i",e),An=(e,t)=>!!samp.callNative("AllowPlayerTeleport","ii",e,t),Cn=e=>!!samp.callNative("IsPlayerTeleportAllowed","i",e),Nn=(e,t)=>!!samp.callNative("AllowPlayerWeapons","i",e,t),Tn=e=>!!samp.callNative("ArePlayerWeaponsAllowed","i",e),Dn=(e,t,a,i)=>!!samp.callNative("GameTextForPlayer","iaii",e,t,a,i),vn=(e,t)=>!!samp.callNative("HasGameText","ii",e,t),wn=(e,t,a,i)=>!!samp.callNative("SendDeathMessageToPlayer","iiii",e,t,a,i),Rn=(e,t)=>!!samp.callNative("HideGameTextForPlayer","ii",e,t),Ln=e=>!!samp.callNative("IsPlayerNPC","i",e),bn=(e,t,a,i)=>!!samp.callNative("SetPlayerPos","ifff",e,t,a,i),On=(e,t,a,i)=>!!samp.callNative("SetPlayerPosFindZ","ifff",e,t,a,i),Gn=e=>{const[t,a,i,n]=samp.callNative("GetPlayerPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},Fn=(e,t)=>!!samp.callNative("SetPlayerFacingAngle","if",e,t),Bn=e=>{const[t,a]=samp.callNative("GetPlayerFacingAngle","iF",e);return{angle:t,ret:a}},xn=(e,t,a,i,n)=>!!samp.callNative("IsPlayerInRangeOfPoint","iffff",e,t,a,i,n),kn=(e,t,a,i)=>samp.callNativeFloat("GetPlayerDistanceFromPoint","ifff",e,t,a,i),Mn=(e,t)=>!!samp.callNative("IsPlayerStreamedIn","ii",e,t),Vn=(e,t)=>!!samp.callNative("SetPlayerInterior","ii",e,t),Hn=e=>samp.callNative("GetPlayerInterior","i",e),Un=(e,t)=>!!samp.callNative("SetPlayerHealth","if",e,t),Wn=e=>{const[t,a]=samp.callNative("GetPlayerHealth","iF",e);return{health:t,ret:a}},jn=(e,t)=>!!samp.callNative("SetPlayerArmour","if",e,t),Kn=e=>{const[t,a]=samp.callNative("GetPlayerArmour","iF",e);return{armour:t,ret:a}},Zn=(e,t,a)=>!!samp.callNative("SetPlayerAmmo","iii",e,t,a),Xn=e=>samp.callNative("GetPlayerAmmo","i",e),Yn=e=>samp.callNative("GetPlayerWeaponState","i",e),zn=e=>samp.callNative("GetPlayerTargetPlayer","i",e),$n=(e,t)=>{samp.callNative("SetPlayerTeam","ii",e,t)},Jn=e=>samp.callNative("GetPlayerTeam","i",e),Qn=(e,t)=>!!samp.callNative("SetPlayerScore","ii",e,t),qn=e=>samp.callNative("GetPlayerScore","i",e),er=e=>samp.callNative("GetPlayerDrunkLevel","i",e),tr=(e,t)=>!!samp.callNative("SetPlayerDrunkLevel","ii",e,t),ar=(e,t)=>!!samp.callNative("SetPlayerColor","ii",e,E(t)),ir=e=>samp.callNative("GetPlayerColor","i",e),nr=(e,t)=>!!samp.callNative("SetPlayerSkin","ii",e,t),rr=e=>samp.callNative("GetPlayerSkin","i",e),sr=(e,t,a)=>!!samp.callNative("GivePlayerWeapon","iii",e,t,a),lr=e=>!!samp.callNative("ResetPlayerWeapons","i",e),or=(e,t)=>!!samp.callNative("SetPlayerArmedWeapon","ii",e,t),dr=(e,t)=>{const[a,i,n]=samp.callNative("GetPlayerWeaponData","iiII",e,t);return{weapons:a,ammo:i,ret:n}},cr=(e,t)=>!!samp.callNative("GivePlayerMoney","ii",e,t),_r=e=>!!samp.callNative("ResetPlayerMoney","i",e),hr=e=>samp.callNative("GetPlayerMoney","i",e),ur=e=>samp.callNative("GetPlayerState","i",e),mr=e=>samp.callNative("GetPlayerPing","i",e),pr=e=>samp.callNative("GetPlayerWeapon","i",e),fr=e=>{const[t,a,i,n]=samp.callNative("GetPlayerKeys","iIII",e);return{keys:t,upDown:a,leftRight:i,ret:n}},gr=(e,t,a)=>!!samp.callNative("SetPlayerTime","iii",e,t,a),Pr=e=>{const[t,a,i]=samp.callNative("GetPlayerTime","iII",e);return{hour:t,minute:a,ret:i}},Sr=(e,t)=>!!samp.callNative("TogglePlayerClock","ii",e,t),yr=(e,t)=>!!samp.callNative("SetPlayerWeather","ii",e,t),Ir=e=>!!samp.callNative("ForceClassSelection","i",e),Er=(e,t)=>!!samp.callNative("SetPlayerWantedLevel","ii",e,t),Ar=e=>samp.callNative("GetPlayerWantedLevel","i",e),Cr=(e,t)=>!!samp.callNative("SetPlayerFightingStyle","ii",e,t),Nr=e=>samp.callNative("GetPlayerFightingStyle","i",e),Tr=(e,t,a,i)=>!!samp.callNative("SetPlayerVelocity","ifff",e,t,a,i),Dr=e=>{const[t,a,i,n]=samp.callNative("GetPlayerVelocity","iFFF",e);return{x:t,y:a,z:i,ret:n}},vr=(e,t,a)=>!!samp.callNative("PlayCrimeReportForPlayer","iii",e,t,a),wr=(e,t,a,i,n,r,s=!1)=>!!samp.callNative("PlayAudioStreamForPlayer","isffffi",e,t,a,i,n,r,s),Rr=e=>!!samp.callNative("StopAudioStreamForPlayer","i",e),Lr=(e,t)=>!!samp.callNative("SetPlayerShopName","is",e,t),br=(e,t,a)=>!!samp.callNative("SetPlayerSkillLevel","iii",e,t,a),Or=e=>samp.callNative("GetPlayerSurfingVehicleID","i",e),Gr=e=>samp.callNative("GetPlayerSurfingObjectID","i",e),Fr=e=>samp.callNative("GetPlayerSurfingPlayerObjectID","i",e),Br=(e,t,a,i,n,r)=>!!samp.callNative("RemoveBuildingForPlayer","iiffff",e,t,a,i,n,r),xr=e=>{const[t,a,i,n,r,s,l]=samp.callNative("GetPlayerLastShotVectors","iFFFFFF",e);return{fOriginX:t,fOriginY:a,fOriginZ:i,fHitPosX:n,fHitPosY:r,fHitPosZ:s,ret:l}},kr=(e,t,a)=>!!samp.callNative("PutPlayerInVehicle","iii",e,t,a),Mr=e=>samp.callNative("GetPlayerVehicleID","i",e),Vr=e=>samp.callNative("GetPlayerVehicleSeat","i",e),Hr=e=>!!samp.callNative("RemovePlayerFromVehicle","i",e),Ur=(e,t)=>!!samp.callNative("TogglePlayerControllable","ii",e,t),Wr=(e,t,a,i,n)=>!!samp.callNative("PlayerPlaySound","iifff",e,t,a,i,n),jr=(e,t,a,i,n,r,s,l,o,d)=>!!samp.callNative("ApplyAnimation","issfiiiiii",e,t,a,i,n,r,s,l,o,d),Kr=(e,t)=>!!samp.callNative("ClearAnimations","ii",e,t),Zr=e=>samp.callNative("GetPlayerAnimationIndex","i",e),Xr=e=>samp.callNative("GetPlayerSpecialAction","i",e),Yr=(e,t)=>!!samp.callNative("SetPlayerSpecialAction","ii",e,t),zr=(e,t)=>!!samp.callNative("DisableRemoteVehicleCollisions","ii",e,t),$r=(e,t)=>!!samp.callNative("SetPlayerVirtualWorld","ii",e,t),Jr=e=>samp.callNative("GetPlayerVirtualWorld","i",e),Qr=(e,t)=>!!samp.callNative("EnableStuntBonusForPlayer","ii",e,t),qr=e=>samp.callNative("GetPlayerCustomSkin","i",e),es=(e,t,a,i,n,r)=>!!samp.callNative("CreateExplosionForPlayer","ifffif",e,t,a,i,n,r),ts=(e,t,a)=>!!samp.callNative("StartRecordingPlayerData","iis",e,t,a),as=e=>!!samp.callNative("StopRecordingPlayerData","i",e),is=(e,t)=>!!samp.callNative("TogglePlayerSpectating","ii",e,t),ns=(e,t,a)=>!!samp.callNative("PlayerSpectatePlayer","iii",e,t,a),rs=(e,t,a)=>!!samp.callNative("PlayerSpectateVehicle","iii",e,t,a),ss=e=>!!samp.callNative("IsPlayerConnected","i",e),ls=(e,t)=>!!samp.callNative("IsPlayerInVehicle","ii",e,t),os=e=>!!samp.callNative("IsPlayerInAnyVehicle","i",e),ds=(e,t,a,i,n)=>!!samp.callNative("SetPlayerWorldBounds","iffff",e,t,a,i,n),cs=e=>!!samp.callNative("ClearPlayerWorldBounds","i",e),_s=(e,t,a)=>!!samp.callNative("SetPlayerMarkerForPlayer","iii",e,t,E(a));function hs(e,t){return samp.callNative("GetPlayerMarkerForPlayer","ii",e,t)}const us=(e,t,a)=>!!samp.callNative("ShowPlayerNameTagForPlayer","iii",e,t,a),ms=(e,t,a,i)=>!!samp.callNative("SetPlayerCameraPos","ifff",e,t,a,i),ps=(e,t,a,i,n)=>!!samp.callNative("SetPlayerCameraLookAt","ifffi",e,t,a,i,n),fs=e=>!!samp.callNative("SetCameraBehindPlayer","i",e),gs=e=>{const[t,a,i,n]=samp.callNative("GetPlayerCameraPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},Ps=e=>{const[t,a,i,n]=samp.callNative("GetPlayerCameraFrontVector","iFFF",e);return{x:t,y:a,z:i,ret:n}},Ss=e=>samp.callNative("GetPlayerCameraMode","i",e),ys=(e,t)=>!!samp.callNative("EnablePlayerCameraTarget","ii",e,t),Is=e=>samp.callNative("GetPlayerCameraTargetVehicle","i",e),Es=e=>samp.callNative("GetPlayerCameraTargetPlayer","i",e),As=e=>samp.callNativeFloat("GetPlayerCameraAspectRatio","i",e),Cs=e=>samp.callNativeFloat("GetPlayerCameraZoom","i",e),Ns=(e,t,a,i,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraPos","iffffffii",e,t,a,i,n,r,s,l,o),Ts=(e,t,a,i,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraLookAt","iffffffii",e,t,a,i,n,r,s,l,o),Ds=e=>!!samp.callNative("IsPlayerCuffed","i",e),vs=e=>!!samp.callNative("IsPlayerInDriveByMode","i",e),ws=e=>!!samp.callNative("IsPlayerUsingOmp","i",e),Rs=(e,t)=>samp.callNative("StartRecordingPlayback","is",e,t),Ls=()=>samp.callNative("StopRecordingPlayback",""),bs=()=>samp.callNative("PauseRecordingPlayback",""),Os=()=>samp.callNative("ResumeRecordingPlayback",""),Gs=e=>samp.callNative("GetActorSkin","i",e),Fs=(e,t)=>samp.callNative("SetActorSkin","ii",e,t),Bs=e=>{const[t=0,a=0,i=0,n=0,r=0,s]=samp.callNative("GetActorSpawnInfo","iIFFFF",e);return{skinId:t,fX:a,fY:i,fZ:n,fAngle:r,ret:s}},xs=e=>{const[t=0,a=0,i=0,n=0,r=0,s=0,l]=samp.callNative("GetVehicleSpawnInfo","iFFFFII",e);return{fX:t,fY:a,fZ:i,fRot:n,color1:r,color2:s,ret:l}},ks=(e,t,a,i,n,r,s,l,o=-2,d=-2)=>samp.callNative("SetVehicleSpawnInfo","iiffffiiii",e,t,a,i,n,r,s,l,o,d),Ms=e=>{const[t=0,a=0,i]=samp.callNative("GetVehicleColor","iII",e);return{color1:t,color2:a,ret:i}},Vs=e=>samp.callNative("GetVehiclePaintjob","i",e),Hs=e=>samp.callNative("GetVehicleInterior","i",e),Us=e=>{const[t,a]=samp.callNative("GetVehicleNumberPlate","iSi",e,33);return{plate:t,ret:a}},Ws=(e,t)=>samp.callNative("SetVehicleRespawnDelay","ii",e,t),js=e=>samp.callNative("GetVehicleRespawnDelay","i",e),Ks=e=>samp.callNative("GetVehicleCab","i",e),Zs=e=>samp.callNative("GetVehicleOccupiedTick","i",e),Xs=(e,t)=>samp.callNative("SetVehicleOccupiedTick","ii",e,t),Ys=e=>!!samp.callNative("HasVehicleBeenOccupied","i",e),zs=e=>!!samp.callNative("IsVehicleOccupied","i",e),$s=e=>samp.callNative("GetVehicleRespawnTick","i",e),Js=(e,t)=>samp.callNative("SetVehicleRespawnTick","ii",e,t),Qs=e=>!!samp.callNative("IsVehicleDead","i",e),qs=(e,t)=>!!samp.callNative("SetVehicleDead","ii",e,t),el=(e,t)=>!!samp.callNative("SetVehicleBeenOccupied","ii",e,t),tl=(e,t)=>samp.callNative("ToggleVehicleSirenEnabled","ii",e,t),al=(e,t)=>samp.callNative("SetVehicleParamsSirenState","ii",e,t),il=e=>!!samp.callNative("IsVehicleSirenEnabled","i",e),nl=e=>samp.callNative("GetVehicleModelCount","i",e),rl=e=>samp.callNative("GetVehicleLastDriver","i",e),sl=e=>samp.callNative("GetVehicleDriver","i",e),ll=()=>samp.callNative("GetVehicleModelsUsed",""),ol=e=>samp.callNative("GetVehicleSirenState","i",e),dl=e=>samp.callNative("GetVehicleLandingGearState","i",e),cl=e=>samp.callNativeFloat("GetVehicleHydraReactorAngle","i",e),_l=e=>samp.callNativeFloat("GetVehicleTrainSpeed","i",e),hl=e=>{const[t=0,a=0,i=0,n=0,r=0,s=0,l=0,o=0,d=0,c]=samp.callNative("GetVehicleMatrix","iFFFFFFFFF",e);return{rightX:t,rightY:a,rightZ:i,upX:n,upY:r,upZ:s,atX:l,atY:o,atZ:d,ret:c}},st=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("GetRandomCarColPair","iIIII",e);return{color:[t,a,i,n],ret:r}},ul=(e,t=255)=>samp.callNative("CarColIndexToColour","ii",e,t),ml=(e,t,a,i,n,r,s,l,o)=>samp.callNative("CreateVehicle","iffffiiii",e,t,a,i,n,E(r),E(s),l,o),pl=e=>samp.callNative("DestroyVehicle","i",e),fl=(e,t)=>!!samp.callNative("IsVehicleStreamedIn","ii",e,t),gl=e=>{const[t,a,i,n]=samp.callNative("GetVehiclePos","iFFF",e);return{x:t,y:a,z:i,ret:n}},Pl=(e,t,a,i)=>!!samp.callNative("SetVehiclePos","ifff",e,t,a,i),Sl=e=>{const[t,a]=samp.callNative("GetVehicleZAngle","iF",e);return{angle:t,ret:a}},yl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleRotationQuat","iFFFF",e);return{w:t,x:a,y:i,z:n,ret:r}},Il=(e,t,a,i)=>samp.callNativeFloat("GetVehicleDistanceFromPoint","ifff",e,t,a,i),El=(e,t)=>samp.callNative("SetVehicleZAngle","if",e,t),Al=(e,t,a,i)=>samp.callNative("SetVehicleParamsForPlayer","iiii",e,t,a,i),Cl=()=>samp.callNative("ManualVehicleEngineAndLights",""),Nl=(e,t,a,i,n,r,s,l)=>samp.callNative("SetVehicleParamsEx","iiiiiiii",e,t,a,i,n,r,s,l),Tl=e=>samp.callNative("GetVehicleParamsEx","iIIIIIII",e),Dl=e=>samp.callNative("GetVehicleParamsSirenState","i",e),vl=(e,t,a,i,n)=>samp.callNative("SetVehicleParamsCarDoors","iiiii",e,t,a,i,n),wl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleParamsCarDoors","iIIII",e);return{driver:t,passenger:a,backLeft:i,backRight:n,ret:r}},Rl=(e,t,a,i,n)=>samp.callNative("SetVehicleParamsCarWindows","iiiii",e,t,a,i,n),Ll=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleParamsCarWindows","iIIII",e);return{driver:t,passenger:a,backLeft:i,backRight:n,ret:r}},bl=e=>samp.callNative("SetVehicleToRespawn","i",e),Ol=(e,t)=>samp.callNative("LinkVehicleToInterior","ii",e,t),Gl=(e,t)=>samp.callNative("AddVehicleComponent","ii",e,t),Fl=(e,t)=>samp.callNative("RemoveVehicleComponent","ii",e,t),Bl=(e,t,a)=>samp.callNative("ChangeVehicleColor","iii",e,E(t),E(a)),xl=(e,t)=>samp.callNative("ChangeVehiclePaintjob","ii",e,t),kl=(e,t)=>samp.callNative("SetVehicleHealth","if",e,t),Ml=e=>{const[t,a]=samp.callNative("GetVehicleHealth","iF",e);return{health:t,ret:a}},Vl=(e,t)=>samp.callNative("AttachTrailerToVehicle","ii",e,t),Hl=e=>samp.callNative("DetachTrailerFromVehicle","i",e),Ul=e=>!!samp.callNative("IsTrailerAttachedToVehicle","i",e),Wl=e=>samp.callNative("GetVehicleTrailer","i",e),jl=(e,t)=>samp.callNative("SetVehicleNumberPlate","is",e,t),Kl=e=>samp.callNative("GetVehicleModel","i",e),Zl=(e,t)=>samp.callNative("GetVehicleComponentInSlot","ii",e,t),Xl=e=>samp.callNative("GetVehicleComponentType","i",e),Yl=e=>samp.callNative("RepairVehicle","i",e),zl=e=>{const[t,a,i,n]=samp.callNative("GetVehicleVelocity","iFFF",e);return{x:t,y:a,z:i,ret:n}},$l=(e,t,a,i)=>!!samp.callNative("SetVehicleVelocity","ifff",e,t,a,i),Jl=(e,t,a,i)=>!!samp.callNative("SetVehicleAngularVelocity","ifff",e,t,a,i),Ql=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleDamageStatus","iIIII",e);return{panels:t,doors:a,lights:i,tires:n,ret:r}},ql=(e,t,a,i,n)=>samp.callNative("UpdateVehicleDamageStatus","iiiii",e,t,a,i,n),eo=(e,t)=>{const[a,i,n,r]=samp.callNative("GetVehicleModelInfo","iiFFF",e,t);return{x:a,y:i,z:n,ret:r}},to=(e,t)=>samp.callNative("SetVehicleVirtualWorld","ii",e,t),ao=e=>samp.callNative("GetVehicleVirtualWorld","i",e),io=e=>!!samp.callNative("IsValidVehicle","i",e),no=(e,t,a,i,n,r,s)=>samp.callNative("AddStaticVehicle","iffffii",e,t,a,i,n,E(r),E(s)),ro=(e,t,a,i,n,r,s,l,o)=>samp.callNative("AddStaticVehicleEx","iffffiiii",e,t,a,i,n,E(r),E(s),l,o),so=e=>!!samp.callNative("ShowVehicle","i",e),lo=e=>!!samp.callNative("HideVehicle","i",e),oo=e=>!!samp.callNative("IsVehicleHidden","i",e),co=e=>!!samp.callNative("IsPlayerInModShop","i",e),_o=e=>samp.callNative("GetPlayerSirenState","i",e),ho=e=>samp.callNative("GetPlayerLandingGearState","i",e),uo=e=>samp.callNative("GetPlayerHydraReactorAngle","i",e),mo=e=>samp.callNativeFloat("GetPlayerTrainSpeed","i",e),po=(e,t)=>samp.callNative("GetVehicleOccupant","ii",e,t),lt=e=>samp.callNative("GetVehicleMaxPassengers","i",e),fo=e=>samp.callNative("CountVehicleOccupants","i",e),go=e=>!!samp.callNative("IsPlayerCheckpointActive","i",e),Po=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("GetPlayerCheckpoint","iFFFF",e);return{fX:t,fY:a,fZ:i,fSize:n,ret:r}},So=e=>!!samp.callNative("IsPlayerRaceCheckpointActive","i",e),yo=e=>{const[t=0,a=0,i=0,n=0,r=0,s=0,l=0,o]=samp.callNative("GetPlayerRaceCheckpoint","iFFFFFFF",e);return{fX:t,fY:a,fZ:i,fNextX:n,fNextY:r,fNextZ:s,fSize:l,ret:o}},Io=e=>!!samp.callNative("IsMenuDisabled","i",e),Eo=(e,t)=>!!samp.callNative("IsMenuRowDisabled","ii",e,t),Ao=(e,t)=>samp.callNative("GetMenuItems","ii",e,t),Co=e=>{const[t=0,a=0,i]=samp.callNative("GetMenuPos","iFF",e);return{fX:t,fY:a,ret:i}},No=e=>{const[t=0,a=0,i]=samp.callNative("GetMenuColumnWidth","iFF",e);return{fColumn1:t,fColumn2:a,ret:i}},To=(e,t)=>{const[a,i]=samp.callNative("GetMenuColumnHeader","iiSi",e,t,31);return{header:a,ret:i}},Do=(e,t,a)=>{const[i,n]=samp.callNative("GetMenuItem","iiiSi",e,t,a,31);return{item:i,ret:n}},vo=(e,t,a,i,n,r)=>samp.callNative("CreateMenu","siffff",e,t,a,i,n,r),wo=e=>samp.callNative("DestroyMenu","i",e),Ro=(e,t,a)=>samp.callNative("AddMenuItem","iis",e,t,a),Lo=(e,t,a)=>samp.callNative("SetMenuColumnHeader","iis",e,t,a),bo=(e,t)=>samp.callNative("ShowMenuForPlayer","ii",e,t),Oo=(e,t)=>samp.callNative("HideMenuForPlayer","ii",e,t),Go=e=>!!samp.callNative("IsValidMenu","i",e),Fo=e=>samp.callNative("DisableMenu","i",e),Bo=(e,t)=>samp.callNative("DisableMenuRow","ii",e,t),xo=e=>samp.callNative("GetPlayerMenu","i",e),ko=e=>!!samp.callNative("IsValidGangZone","i",e),Mo=(e,t)=>!!samp.callNative("IsPlayerInGangZone","ii",e,t),Vo=(e,t)=>!!samp.callNative("IsGangZoneVisibleForPlayer","ii",e,t),Ho=(e,t)=>samp.callNative("GangZoneGetColorForPlayer","ii",e,t),Uo=(e,t)=>samp.callNative("GangZoneGetFlashColorForPlayer","ii",e,t),Wo=(e,t)=>!!samp.callNative("IsGangZoneFlashingForPlayer","ii",e,t),jo=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("GangZoneGetPos","iFFFF",e);return{fMinX:t,fMinY:a,fMaxX:i,fMaxY:n,ret:r}},Ko=(e,t)=>{samp.callNative("UseGangZoneCheck","ii",e,t)},Zo=(e,t,a,i)=>samp.callNative("GangZoneCreate","ffff",e,t,a,i),Xo=e=>samp.callNative("GangZoneDestroy","i",e),Yo=(e,t,a)=>samp.callNative("GangZoneShowForPlayer","iii",e,t,E(a)),zo=(e,t)=>samp.callNative("GangZoneShowForAll","ii",e,E(t)),$o=(e,t)=>samp.callNative("GangZoneHideForPlayer","ii",e,t),Jo=e=>samp.callNative("GangZoneHideForAll","i",e),Qo=(e,t,a)=>samp.callNative("GangZoneFlashForPlayer","iii",e,t,E(a)),qo=(e,t)=>samp.callNative("GangZoneFlashForAll","ii",e,E(t)),ed=(e,t)=>samp.callNative("GangZoneStopFlashForPlayer","ii",e,t),td=e=>samp.callNative("GangZoneStopFlashForAll","i",e),ad=(e,t,a,i,n)=>samp.callNative("CreatePlayerGangZone","iffff",e,t,a,i,n),id=(e,t)=>samp.callNative("PlayerGangZoneDestroy","ii",e,t),nd=(e,t,a)=>samp.callNative("PlayerGangZoneShow","iii",e,t,a),rd=(e,t)=>samp.callNative("PlayerGangZoneHide","ii",e,t),sd=(e,t,a)=>samp.callNative("PlayerGangZoneFlash","iii",e,t,a),ld=(e,t)=>samp.callNative("PlayerGangZoneStopFlash","ii",e,t),od=(e,t)=>!!samp.callNative("IsValidPlayerGangZone","ii",e,t),dd=(e,t)=>!!samp.callNative("IsPlayerInPlayerGangZone","ii",e,t),cd=(e,t)=>!!samp.callNative("IsPlayerGangZoneVisible","ii",e,t),_d=(e,t)=>samp.callNative("PlayerGangZoneGetColor","ii",e,t),hd=(e,t)=>samp.callNative("PlayerGangZoneGetFlashColor","ii",e,t),ud=(e,t)=>!!samp.callNative("IsPlayerGangZoneFlashing","ii",e,t),md=(e,t)=>{const[a=0,i=0,n=0,r=0,s]=samp.callNative("PlayerGangZoneGetPos","iiFFFF",e,t);return{fMinX:a,fMinY:i,fMaxX:n,fMaxY:r,ret:s}},pd=(e,t,a)=>{samp.callNative("UsePlayerGangZoneCheck","iii",e,t,a)},fd=e=>!!samp.callNative("IsValidTextDraw","i",e),gd=(e,t)=>!!samp.callNative("IsTextDrawVisibleForPlayer","ii",e,t),Pd=e=>{const[t,a]=samp.callNative("TextDrawGetString","iSi",e,1024);return{str:t,ret:a}},Sd=(e,t,a)=>{samp.callNative("TextDrawSetPos","iff",e,t,a)},yd=e=>{const[t=0,a=0,i]=samp.callNative("TextDrawGetLetterSize","iFF",e);return{fX:t,fY:a,ret:i}},Id=e=>{const[t=0,a=0,i]=samp.callNative("TextDrawGetTextSize","iFF",e);return{fX:t,fY:a,ret:i}},Ed=e=>{const[t=0,a=0,i]=samp.callNative("TextDrawGetPos","iFF",e);return{fX:t,fY:a,ret:i}},Ad=e=>samp.callNative("TextDrawGetColor","i",e),Cd=e=>samp.callNative("TextDrawGetBoxColor","i",e),Nd=e=>samp.callNative("TextDrawGetBackgroundColor","i",e),Td=e=>samp.callNative("TextDrawGetShadow","i",e),Dd=e=>samp.callNative("TextDrawGetOutline","i",e),vd=e=>samp.callNative("TextDrawGetFont","i",e),wd=e=>!!samp.callNative("TextDrawIsBox","i",e),Rd=e=>!!samp.callNative("TextDrawIsProportional","i",e),Ld=e=>!!samp.callNative("TextDrawIsSelectable","i",e),bd=e=>samp.callNative("TextDrawGetAlignment","i",e),Od=e=>samp.callNative("TextDrawGetPreviewModel","i",e),Gd=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("TextDrawGetPreviewRot","iFFFF",e);return{fRotX:t,fRotY:a,fRotZ:i,fZoom:n,ret:r}},Fd=e=>{const[t,a,i]=samp.callNative("TextDrawGetPreviewVehCol","iII",e);return{color1:t,color2:a,ret:i}},Bd=(e,t,a)=>{samp.callNative("TextDrawSetStringForPlayer","iia",e,t,a)},xd=(e,t,a)=>samp.callNative("TextDrawCreate","ffa",e,t,a),kd=e=>samp.callNative("TextDrawDestroy","i",e),Md=(e,t,a)=>samp.callNative("TextDrawLetterSize","iff",e,t,a),Vd=(e,t,a)=>samp.callNative("TextDrawTextSize","iff",e,t,a),Hd=(e,t)=>samp.callNative("TextDrawAlignment","ii",e,t),Ud=(e,t)=>!!samp.callNative("TextDrawColor","ii",e,E(t)),Wd=(e,t)=>samp.callNative("TextDrawUseBox","ii",e,t),jd=(e,t)=>!!samp.callNative("TextDrawBoxColor","ii",e,E(t)),Kd=(e,t)=>samp.callNative("TextDrawSetShadow","ii",e,t),Zd=(e,t)=>samp.callNative("TextDrawSetOutline","ii",e,t),Xd=(e,t)=>!!samp.callNative("TextDrawBackgroundColor","ii",e,E(t)),Yd=(e,t)=>samp.callNative("TextDrawFont","ii",e,t),zd=(e,t)=>samp.callNative("TextDrawSetProportional","ii",e,t),$d=(e,t)=>samp.callNative("TextDrawSetSelectable","ii",e,t),Jd=(e,t)=>samp.callNative("TextDrawShowForPlayer","ii",e,t),Qd=(e,t)=>samp.callNative("TextDrawHideForPlayer","ii",e,t),qd=e=>samp.callNative("TextDrawShowForAll","i",e),ec=e=>samp.callNative("TextDrawHideForAll","i",e),tc=(e,t)=>samp.callNative("TextDrawSetString","ia",e,t),ac=(e,t)=>samp.callNative("TextDrawSetPreviewModel","ii",e,t),ic=(e,t,a,i,n=1)=>{samp.callNative("TextDrawSetPreviewRot","iffff",e,t,a,i,n)},nc=(e,t,a)=>!!samp.callNative("TextDrawSetPreviewVehCol","iii",e,E(t),E(a)),rc=(e,t)=>{samp.callNative("SelectTextDraw","ii",e,E(t))},sc=e=>{samp.callNative("CancelSelectTextDraw","i",e)},lc=(e,t)=>!!samp.callNative("IsValidPlayerTextDraw","ii",e,t),oc=(e,t)=>!!samp.callNative("IsPlayerTextDrawVisible","ii",e,t),dc=(e,t)=>{const[a,i]=samp.callNative("PlayerTextDrawGetString","iiSi",e,t,1024);return{str:a,ret:i}},cc=(e,t,a,i)=>{samp.callNative("PlayerTextDrawSetPos","iiff",e,t,a,i)},_c=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetLetterSize","iiFF",e,t);return{fX:a,fY:i,ret:n}},hc=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetTextSize","iiFF",e,t);return{fX:a,fY:i,ret:n}},uc=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetPos","iiFF",e,t);return{fX:a,fY:i,ret:n}},mc=(e,t)=>samp.callNative("PlayerTextDrawGetColor","ii",e,t),pc=(e,t)=>samp.callNative("PlayerTextDrawGetBoxColor","ii",e,t),fc=(e,t)=>samp.callNative("PlayerTextDrawGetBackgroundColor","ii",e,t),gc=(e,t)=>samp.callNative("PlayerTextDrawGetShadow","ii",e,t),Pc=(e,t)=>samp.callNative("PlayerTextDrawGetOutline","ii",e,t),Sc=(e,t)=>samp.callNative("PlayerTextDrawGetFont","ii",e,t),yc=(e,t)=>!!samp.callNative("PlayerTextDrawIsBox","ii",e,t),Ic=(e,t)=>!!samp.callNative("PlayerTextDrawIsProportional","ii",e,t),Ec=(e,t)=>!!samp.callNative("PlayerTextDrawIsSelectable","ii",e,t),Ac=(e,t)=>samp.callNative("PlayerTextDrawGetAlignment","ii",e,t),Cc=(e,t)=>samp.callNative("PlayerTextDrawGetPreviewModel","ii",e,t),Nc=(e,t)=>{const[a=0,i=0,n=0,r=0]=samp.callNative("PlayerTextDrawGetPreviewRot","iiFFFF",e,t);return{fRotX:a,fRotY:i,fRotZ:n,fZoom:r}},Tc=(e,t)=>{const[a,i,n]=samp.callNative("PlayerTextDrawGetPreviewVehCol","iiII",e,t);return{color1:a,color2:i,ret:n}},Dc=(e,t,a,i)=>samp.callNative("CreatePlayerTextDraw","iffa",e,t,a,i),vc=(e,t)=>{samp.callNative("PlayerTextDrawDestroy","ii",e,t)},wc=(e,t,a,i)=>samp.callNative("PlayerTextDrawLetterSize","iiff",e,t,a,i),Rc=(e,t,a,i)=>samp.callNative("PlayerTextDrawTextSize","iiff",e,t,a,i),Lc=(e,t,a)=>samp.callNative("PlayerTextDrawAlignment","iii",e,t,a),bc=(e,t,a)=>!!samp.callNative("PlayerTextDrawColor","iii",e,t,E(a)),Oc=(e,t,a)=>samp.callNative("PlayerTextDrawUseBox","iii",e,t,a),Gc=(e,t,a)=>!!samp.callNative("PlayerTextDrawBoxColor","iii",e,t,E(a)),Fc=(e,t,a)=>samp.callNative("PlayerTextDrawSetShadow","iii",e,t,a),Bc=(e,t,a)=>samp.callNative("PlayerTextDrawSetOutline","iii",e,t,a),xc=(e,t,a)=>!!samp.callNative("PlayerTextDrawBackgroundColor","iii",e,t,E(a)),kc=(e,t,a)=>samp.callNative("PlayerTextDrawFont","iii",e,t,a),Mc=(e,t,a)=>samp.callNative("PlayerTextDrawSetProportional","iii",e,t,a),Vc=(e,t,a)=>samp.callNative("PlayerTextDrawSetSelectable","iii",e,t,a),Hc=(e,t)=>samp.callNative("PlayerTextDrawShow","ii",e,t),Uc=(e,t)=>samp.callNative("PlayerTextDrawHide","ii",e,t),Wc=(e,t,a)=>samp.callNative("PlayerTextDrawSetString","iia",e,t,a),jc=(e,t,a)=>samp.callNative("PlayerTextDrawSetPreviewModel","iii",e,t,a),Kc=(e,t,a,i,n,r)=>samp.callNative("PlayerTextDrawSetPreviewRot","iiffff",e,t,a,i,n,r),Zc=(e,t,a,i)=>!!samp.callNative("PlayerTextDrawSetPreviewVehCol","iiii",e,t,a,i),Xc=(e,t)=>!!samp.callNative("EditAttachedObject","ii",e,t),Yc=e=>!!samp.callNative("BeginObjectSelecting","i",e),zc=e=>!!samp.callNative("EndObjectEditing","i",e),$c=e=>!!samp.callNative("SetObjectsDefaultCameraCol","i",e),Jc=(e,t,a,i,n)=>samp.callNative("AddSimpleModel","iiiss",e,t,a,i,n),Qc=(e,t,a,i,n,r,s)=>samp.callNative("AddSimpleModelTimed","iiissii",e,t,a,i,n,r,s),qc=(e,t)=>samp.callNative("RedirectDownload","is",e,t),e_=e=>{const[t,a]=samp.callNative("FindModelFileNameFromCRC","iSi",e,255);return{name:t,ret:a}},t_=e=>{const[t,a]=samp.callNative("FindTextureFileNameFromCRC","iSi",e,255);return{name:t,ret:a}},a_=(e,t)=>{const[a=0,i=0,n=0,r=0,s=0,l=0,o=0,d=0,c=0,u=0,p=0,g=0,f=0,y]=samp.callNative("GetPlayerAttachedObject","iiIIFFFFFFFFFII",e,t);return{modelId:a,bone:i,fX:n,fY:r,fZ:s,fRotX:l,fRotY:o,fRotZ:d,fScaleX:c,fScaleY:u,fScaleZ:p,materialColor1:g,materialColor2:f,ret:y}},i_=(e,t,a,i,n,r,s,l,o,d,c,u,p,g,f)=>samp.callNative("SetPlayerAttachedObject","iiiifffffffffii",e,t,a,i,n,r,s,l,o,d,c,u,p,E(g),E(f)),n_=(e,t)=>samp.callNative("RemovePlayerAttachedObject","ii",e,t),r_=(e,t)=>!!samp.callNative("IsPlayerAttachedObjectSlotUsed","ii",e,t),ot=e=>!!samp.callNative("IsValidCustomModel","i",e),s_=e=>{if(!ot(e))return null;const[t,a,i]=samp.callNative("GetCustomModePath","iSiSi",e,255,255);return{dffPath:t,txdPath:a,ret:i}};var dt=(e=>(e[e.DOWNLOAD_REQUEST_EMPTY=0]="DOWNLOAD_REQUEST_EMPTY",e[e.DOWNLOAD_REQUEST_MODEL_FILE=1]="DOWNLOAD_REQUEST_MODEL_FILE",e[e.DOWNLOAD_REQUEST_TEXTURE_FILE=2]="DOWNLOAD_REQUEST_TEXTURE_FILE",e))(dt||{}),ct=(e=>(e[e.SCOREBOARD=0]="SCOREBOARD",e))(ct||{}),Ue=(e=>(e[e.MSGBOX=0]="MSGBOX",e[e.INPUT=1]="INPUT",e[e.LIST=2]="LIST",e[e.PASSWORD=3]="PASSWORD",e[e.TABLIST=4]="TABLIST",e[e.TABLIST_HEADERS=5]="TABLIST_HEADERS",e))(Ue||{}),_t=(e=>(e[e.CANCEL=0]="CANCEL",e[e.FINAL=1]="FINAL",e[e.UPDATE=2]="UPDATE",e))(_t||{}),ht=(e=>(e[e.NO_ACTION=0]="NO_ACTION",e[e.DISCONNECT_ASAP=1]="DISCONNECT_ASAP",e[e.DISCONNECT_ASAP_SILENTLY=2]="DISCONNECT_ASAP_SILENTLY",e[e.DISCONNECT_ON_NO_ACK=3]="DISCONNECT_ON_NO_ACK",e[e.REQUESTED_CONNECTION=4]="REQUESTED_CONNECTION",e[e.HANDLING_CONNECTION_REQUEST=5]="HANDLING_CONNECTION_REQUEST",e[e.UNVERIFIED_SENDER=6]="UNVERIFIED_SENDER",e[e.SET_ENCRYPTION_ON_MULTIPLE_16_BYTE_PACKET=7]="SET_ENCRYPTION_ON_MULTIPLE_16_BYTE_PACKET",e[e.CONNECTED=8]="CONNECTED",e))(ht||{}),D=(e=>(e[e.NO_TEAM=255]="NO_TEAM",e[e.PLAYER_ID=65535]="PLAYER_ID",e[e.VEHICLE_ID=65535]="VEHICLE_ID",e[e.ACTOR_ID=65535]="ACTOR_ID",e[e.OBJECT_ID=65535]="OBJECT_ID",e[e.MENU=-1]="MENU",e[e.TEXT_DRAW=65535]="TEXT_DRAW",e[e.PLAYER_TEXT_DRAW=65535]="PLAYER_TEXT_DRAW",e[e.GANG_ZONE=-1]="GANG_ZONE",e[e._3DTEXT_ID=65535]="_3DTEXT_ID",e[e.PLAYER_3DTEXT_ID=65535]="PLAYER_3DTEXT_ID",e))(D||{}),ut=(e=>(e[e.NONE=0]="NONE",e[e.ACTION=1]="ACTION",e[e.CROUCH=2]="CROUCH",e[e.FIRE=4]="FIRE",e[e.SPRINT=8]="SPRINT",e[e.SECONDARY_ATTACK=16]="SECONDARY_ATTACK",e[e.JUMP=32]="JUMP",e[e.LOOK_RIGHT=64]="LOOK_RIGHT",e[e.HANDBRAKE=128]="HANDBRAKE",e[e.LOOK_LEFT=256]="LOOK_LEFT",e[e.SUBMISSION=512]="SUBMISSION",e[e.LOOK_BEHIND=512]="LOOK_BEHIND",e[e.WALK=1024]="WALK",e[e.ANALOG_UP=2048]="ANALOG_UP",e[e.ANALOG_DOWN=4096]="ANALOG_DOWN",e[e.ANALOG_LEFT=8192]="ANALOG_LEFT",e[e.ANALOG_RIGHT=16384]="ANALOG_RIGHT",e[e.YES=65536]="YES",e[e.NO=131072]="NO",e[e.CTRL_BACK=262144]="CTRL_BACK",e[e.KEY_UP=-128]="KEY_UP",e[e.KEY_DOWN=128]="KEY_DOWN",e[e.KEY_LEFT=-128]="KEY_LEFT",e[e.KEY_RIGHT=128]="KEY_RIGHT",e))(ut||{}),V=(e=>(e[e.MAX_PLAYER_NAME=24]="MAX_PLAYER_NAME",e[e.MAX_PLAYERS=1e3]="MAX_PLAYERS",e[e.MAX_VEHICLES=2e3]="MAX_VEHICLES",e[e.MAX_ACTORS=1e3]="MAX_ACTORS",e[e.MAX_OBJECTS=1e3]="MAX_OBJECTS",e[e.MAX_GANG_ZONES=1024]="MAX_GANG_ZONES",e[e.MAX_TEXT_DRAWS=2048]="MAX_TEXT_DRAWS",e[e.MAX_PLAYER_TEXT_DRAWS=256]="MAX_PLAYER_TEXT_DRAWS",e[e.MAX_MENUS=128]="MAX_MENUS",e[e.MAX_MENU_ROW=12]="MAX_MENU_ROW",e[e.MAX_MENU_COL=2]="MAX_MENU_COL",e[e.MAX_3DTEXT_GLOBAL=1024]="MAX_3DTEXT_GLOBAL",e[e.MAX_3DTEXT_PLAYER=1024]="MAX_3DTEXT_PLAYER",e[e.MAX_PICKUPS=4096]="MAX_PICKUPS",e[e.MAX_PLAYER_ATTACHED_OBJECTS=10]="MAX_PLAYER_ATTACHED_OBJECTS",e[e.MAX_CHATBUBBLE_LENGTH=144]="MAX_CHATBUBBLE_LENGTH",e[e.NPC_MAX_NODES=64]="NPC_MAX_NODES",e))(V||{}),mt=(e=>(e[e.OFF=0]="OFF",e[e.GLOBAL=1]="GLOBAL",e[e.STREAMED=2]="STREAMED",e))(mt||{}),pt=(e=>(e[e.NONE=1]="NONE",e[e.DRIVER=2]="DRIVER",e[e.ONFOOT=3]="ONFOOT",e))(pt||{}),H=(e=>(e[e.NONE=0]="NONE",e[e.START=1]="START",e[e.PAUSE=2]="PAUSE",e))(H||{}),Oe=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.WALK=1]="WALK",e[e.JOG=2]="JOG",e[e.SPRINT=3]="SPRINT",e[e.DRIVE=4]="DRIVE",e[e.AUTO=5]="AUTO",e))(Oe||{}),ft=(e=>(e[e.NONE=0]="NONE",e[e.PLAYER=1]="PLAYER",e[e.NPC=2]="NPC",e[e.ACTOR=4]="ACTOR",e[e.VEHICLE=8]="VEHICLE",e[e.OBJECT=16]="OBJECT",e[e.POBJECT_ORIG=32]="POBJECT_ORIG",e[e.POBJECT_TARG=64]="POBJECT_TARG",e[e.MAP=128]="MAP",e[e.ALL=255]="ALL",e))(ft||{}),Ge=(e=>(e[e.AUTO=-1]="AUTO",e[e.WALK=.1552086]="WALK",e[e.JOG=.56444]="JOG",e[e.SPRINT=.926784]="SPRINT",e))(Ge||{}),gt=(e=>(e[e._32x32=10]="_32x32",e[e._64x32=20]="_64x32",e[e._64x64=30]="_64x64",e[e._128x32=40]="_128x32",e[e._128x64=50]="_128x64",e[e._128x128=60]="_128x128",e[e._256x32=70]="_256x32",e[e._256x64=80]="_256x64",e[e._256x128=90]="_256x128",e[e._256x256=100]="_256x256",e[e._512x64=110]="_512x64",e[e._512x128=120]="_512x128",e[e._512x256=130]="_512x256",e[e._512x512=140]="_512x512",e))(gt||{}),Pt=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(Pt||{}),St=(e=>(e[e.GLOBAL_OBJECT=1]="GLOBAL_OBJECT",e[e.PLAYER_OBJECT=2]="PLAYER_OBJECT",e))(St||{}),yt=(e=>(e[e.NORMAL=0]="NORMAL",e[e.BOXING=1]="BOXING",e[e.KUNGFU=2]="KUNGFU",e[e.KNEEHEAD=3]="KNEEHEAD",e[e.GRABKICK=4]="GRABKICK",e[e.ELBOW=5]="ELBOW",e))(yt||{}),It=(e=>(e[e.LOCAL=0]="LOCAL",e[e.GLOBAL=1]="GLOBAL",e[e.LOCAL_CHECKPOINT=2]="LOCAL_CHECKPOINT",e[e.GLOBAL_CHECKPOINT=3]="GLOBAL_CHECKPOINT",e))(It||{}),Se=(e=>(e[e.MOVE=1]="MOVE",e[e.CUT=2]="CUT",e))(Se||{}),Et=(e=>(e[e.BEHINDCAR=3]="BEHINDCAR",e[e.FOLLOWPED=4]="FOLLOWPED",e[e.SNIPER=7]="SNIPER",e[e.ROCKETLAUNCHER=8]="ROCKETLAUNCHER",e[e.FIXED=15]="FIXED",e[e._1STPERSON=16]="_1STPERSON",e[e.CAM_ON_A_STRING=18]="CAM_ON_A_STRING",e[e.BEHINDBOAT=22]="BEHINDBOAT",e[e.CAMERA=46]="CAMERA",e[e.ROCKETLAUNCHER_HS=51]="ROCKETLAUNCHER_HS",e[e.AIMWEAPON=53]="AIMWEAPON",e[e.AIMWEAPON_FROMCAR=55]="AIMWEAPON_FROMCAR",e[e.DW_HELI_CHASE=56]="DW_HELI_CHASE",e[e.DW_CAM_MAN=57]="DW_CAM_MAN",e[e.DW_BIRDY=58]="DW_BIRDY",e[e.DW_PLANE_SPOTTER=59]="DW_PLANE_SPOTTER",e[e.DW_PLANECAM1=62]="DW_PLANECAM1",e[e.DW_PLANECAM2=63]="DW_PLANECAM2",e[e.DW_PLANECAM3=64]="DW_PLANECAM3",e))(Et||{}),Fe=(e=>(e[e.NORMAL=1]="NORMAL",e[e.FIXED=2]="FIXED",e[e.SIDE=3]="SIDE",e))(Fe||{}),ye=(e=>(e[e.NONE=0]="NONE",e[e.ONFOOT=1]="ONFOOT",e[e.DRIVER=2]="DRIVER",e[e.PASSENGER=3]="PASSENGER",e[e.EXIT_VEHICLE=4]="EXIT_VEHICLE",e[e.ENTER_VEHICLE_DRIVER=5]="ENTER_VEHICLE_DRIVER",e[e.ENTER_VEHICLE_PASSENGER=6]="ENTER_VEHICLE_PASSENGER",e[e.WASTED=7]="WASTED",e[e.SPAWNED=8]="SPAWNED",e[e.SPECTATING=9]="SPECTATING",e))(ye||{}),At=(e=>(e[e.TORSO=3]="TORSO",e[e.GROIN=4]="GROIN",e[e.LEFT_ARM=5]="LEFT_ARM",e[e.RIGHT_ARM=6]="RIGHT_ARM",e[e.LEFT_LEG=7]="LEFT_LEG",e[e.RIGHT_LEG=8]="RIGHT_LEG",e[e.HEAD=9]="HEAD",e))(At||{}),Ct=(e=>(e[e.Spine=1]="Spine",e[e.Head=2]="Head",e[e.LeftUpperArm=3]="LeftUpperArm",e[e.RightUpperArm=4]="RightUpperArm",e[e.LeftHand=5]="LeftHand",e[e.RightHand=6]="RightHand",e[e.LeftThigh=7]="LeftThigh",e[e.RightThigh=8]="RightThigh",e[e.LeftFoot=9]="LeftFoot",e[e.RightFoot=10]="RightFoot",e[e.RightCalf=11]="RightCalf",e[e.LeftCalf=12]="LeftCalf",e[e.LeftForearm=13]="LeftForearm",e[e.RightForearm=14]="RightForearm",e[e.LeftClavicle=15]="LeftClavicle",e[e.RightClavicle=16]="RightClavicle",e[e.Neck=17]="Neck",e[e.Jaw=18]="Jaw",e))(Ct||{}),Nt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.ALL=1]="ALL",e[e.OTHER=2]="OTHER",e))(Nt||{}),We=(e=>(e[e.NONE=0]="NONE",e[e.DUCK=1]="DUCK",e[e.USEJETPACK=2]="USEJETPACK",e[e.ENTER_VEHICLE=3]="ENTER_VEHICLE",e[e.EXIT_VEHICLE=4]="EXIT_VEHICLE",e[e.DANCE1=5]="DANCE1",e[e.DANCE2=6]="DANCE2",e[e.DANCE3=7]="DANCE3",e[e.DANCE4=8]="DANCE4",e[e.HANDSUP=10]="HANDSUP",e[e.USECELLPHONE=11]="USECELLPHONE",e[e.SITTING=12]="SITTING",e[e.STOPUSECELLPHONE=13]="STOPUSECELLPHONE",e[e.DRINK_BEER=20]="DRINK_BEER",e[e.SMOKE_CIGGY=21]="SMOKE_CIGGY",e[e.DRINK_WINE=22]="DRINK_WINE",e[e.DRINK_SPRUNK=23]="DRINK_SPRUNK",e[e.CUFFED=24]="CUFFED",e[e.CARRY=25]="CARRY",e[e.PISSING=68]="PISSING",e))(We||{}),Ie=(e=>(e[e.FONT_0=0]="FONT_0",e[e.FONT_1=1]="FONT_1",e[e.FONT_2=2]="FONT_2",e[e.FONT_3=3]="FONT_3",e[e.SPRITE_DRAW=4]="SPRITE_DRAW",e[e.MODEL_PREVIEW=5]="MODEL_PREVIEW",e[e.BANK=0]="BANK",e[e.STANDARD=1]="STANDARD",e[e.SPACEAGE=2]="SPACEAGE",e[e.HEADING=3]="HEADING",e[e.BECKETT_REGULAR=0]="BECKETT_REGULAR",e[e.AHARONI_BOLD=1]="AHARONI_BOLD",e[e.BANK_GOTHIC=2]="BANK_GOTHIC",e[e.PRICEDOWN=3]="PRICEDOWN",e[e.SPRITE=4]="SPRITE",e[e.PREVIEW=5]="PREVIEW",e))(Ie||{}),Tt=(e=>(e[e.LEFT=1]="LEFT",e[e.CENTER=2]="CENTER",e[e.RIGHT=3]="RIGHT",e))(Tt||{}),Dt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=-1]="NONE",e[e.SPOILER=0]="SPOILER",e[e.HOOD=1]="HOOD",e[e.ROOF=2]="ROOF",e[e.SIDESKIRT=3]="SIDESKIRT",e[e.LAMPS=4]="LAMPS",e[e.NITRO=5]="NITRO",e[e.EXHAUST=6]="EXHAUST",e[e.WHEELS=7]="WHEELS",e[e.STEREO=8]="STEREO",e[e.HYDRAULICS=9]="HYDRAULICS",e[e.FRONT_BUMPER=10]="FRONT_BUMPER",e[e.REAR_BUMPER=11]="REAR_BUMPER",e[e.VENT_RIGHT=12]="VENT_RIGHT",e[e.VENT_LEFT=13]="VENT_LEFT",e[e.FRONT_BULLBAR=14]="FRONT_BULLBAR",e[e.REAR_BULLBAR=15]="REAR_BULLBAR",e))(Dt||{}),vt=(e=>(e[e.UNSET=-1]="UNSET",e[e.OFF=0]="OFF",e[e.ON=1]="ON",e))(vt||{}),wt=(e=>(e[e.SIZE=1]="SIZE",e[e.FRONTSEAT=2]="FRONTSEAT",e[e.REARSEAT=3]="REARSEAT",e[e.PETROLCAP=4]="PETROLCAP",e[e.WHEELSFRONT=5]="WHEELSFRONT",e[e.WHEELSREAR=6]="WHEELSREAR",e[e.WHEELSMID=7]="WHEELSMID",e[e.FRONT_BUMPER_Z=8]="FRONT_BUMPER_Z",e[e.REAR_BUMPER_Z=9]="REAR_BUMPER_Z",e))(wt||{}),Rt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.REASON_VEHICLE=49]="REASON_VEHICLE",e[e.REASON_DROWN=53]="REASON_DROWN",e[e.REASON_COLLISION=54]="REASON_COLLISION",e[e.REASON_SPLAT=54]="REASON_SPLAT",e[e.REASON_CONNECT=200]="REASON_CONNECT",e[e.REASON_DISCONNECT=200]="REASON_DISCONNECT",e[e.REASON_SUICIDE=255]="REASON_SUICIDE",e[e.FIST=0]="FIST",e[e.BRASSKNUCKLE=1]="BRASSKNUCKLE",e[e.GOLFCLUB=2]="GOLFCLUB",e[e.NITESTICK=3]="NITESTICK",e[e.KNIFE=4]="KNIFE",e[e.BAT=5]="BAT",e[e.SHOVEL=6]="SHOVEL",e[e.POOLSTICK=7]="POOLSTICK",e[e.KATANA=8]="KATANA",e[e.CHAINSAW=9]="CHAINSAW",e[e.DILDO=10]="DILDO",e[e.DILDO2=11]="DILDO2",e[e.VIBRATOR=12]="VIBRATOR",e[e.VIBRATOR2=13]="VIBRATOR2",e[e.FLOWER=14]="FLOWER",e[e.CANE=15]="CANE",e[e.GRENADE=16]="GRENADE",e[e.TEARGAS=17]="TEARGAS",e[e.MOLTOV=18]="MOLTOV",e[e.COLT45=22]="COLT45",e[e.SILENCED=23]="SILENCED",e[e.DEAGLE=24]="DEAGLE",e[e.SHOTGUN=25]="SHOTGUN",e[e.SAWEDOFF=26]="SAWEDOFF",e[e.SHOTGSPA=27]="SHOTGSPA",e[e.UZI=28]="UZI",e[e.MP5=29]="MP5",e[e.AK47=30]="AK47",e[e.M4=31]="M4",e[e.TEC9=32]="TEC9",e[e.RIFLE=33]="RIFLE",e[e.SNIPER=34]="SNIPER",e[e.ROCKETLAUNCHER=35]="ROCKETLAUNCHER",e[e.HEATSEEKER=36]="HEATSEEKER",e[e.FLAMETHROWER=37]="FLAMETHROWER",e[e.MINIGUN=38]="MINIGUN",e[e.SATCHEL=39]="SATCHEL",e[e.BOMB=40]="BOMB",e[e.SPRAYCAN=41]="SPRAYCAN",e[e.FIREEXTINGUISHER=42]="FIREEXTINGUISHER",e[e.CAMERA=43]="CAMERA",e[e.NIGHT_VISION_GOGGLES=44]="NIGHT_VISION_GOGGLES",e[e.THERMAL_GOGGLES=45]="THERMAL_GOGGLES",e[e.PARACHUTE=46]="PARACHUTE",e))(Rt||{}),Lt=(e=>(e[e.PISTOL=0]="PISTOL",e[e.PISTOL_SILENCED=1]="PISTOL_SILENCED",e[e.DESERT_EAGLE=2]="DESERT_EAGLE",e[e.SHOTGUN=3]="SHOTGUN",e[e.SAWNOFF_SHOTGUN=4]="SAWNOFF_SHOTGUN",e[e.SPAS12_SHOTGUN=5]="SPAS12_SHOTGUN",e[e.MICRO_UZI=6]="MICRO_UZI",e[e.MP5=7]="MP5",e[e.AK47=8]="AK47",e[e.M4=9]="M4",e[e.SNIPERRIFLE=10]="SNIPERRIFLE",e))(Lt||{}),bt=(e=>(e[e.NONE=0]="NONE",e[e.PLAYER=1]="PLAYER",e[e.VEHICLE=2]="VEHICLE",e[e.OBJECT=3]="OBJECT",e[e.PLAYER_OBJECT=4]="PLAYER_OBJECT",e))(bt||{}),Ot=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NO_BULLETS=0]="NO_BULLETS",e[e.LAST_BULLET=1]="LAST_BULLET",e[e.MORE_BULLETS=2]="MORE_BULLETS",e[e.RELOADING=3]="RELOADING",e))(Ot||{}),je=(e=>(e[e.VEHICLE=49]="VEHICLE",e[e.HELICOPTERBLADES=50]="HELICOPTERBLADES",e[e.EXPLOSION=51]="EXPLOSION",e[e.DROWN=53]="DROWN",e[e.COLLISION=54]="COLLISION",e[e.CONNECT=200]="CONNECT",e[e.DISCONNECT=201]="DISCONNECT",e[e.SUICIDE=255]="SUICIDE",e))(je||{}),Gt=(e=>(e[e.NONE=0]="NONE",e[e.DRIVER=1]="DRIVER",e[e.ONFOOT=2]="ONFOOT",e))(Gt||{}),Ft=(e=>(e[e.CIRCLE=0]="CIRCLE",e[e.CYLINDER=1]="CYLINDER",e[e.SPHERE=2]="SPHERE",e[e.RECTANGLE=3]="RECTANGLE",e[e.CUBOID=4]="CUBOID",e[e.POLYGON=5]="POLYGON",e))(Ft||{}),v=(e=>(e[e.OBJECT_SD=300]="OBJECT_SD",e[e.OBJECT_DD=0]="OBJECT_DD",e[e.PICKUP_SD=200]="PICKUP_SD",e[e.CP_SD=200]="CP_SD",e[e.RACE_CP_SD=200]="RACE_CP_SD",e[e.MAP_ICON_SD=200]="MAP_ICON_SD",e[e.TEXT_3D_LABEL_SD=200]="TEXT_3D_LABEL_SD",e[e.ACTOR_SD=200]="ACTOR_SD",e))(v||{}),S=(e=>(e[e.OBJECT=0]="OBJECT",e[e.PICKUP=1]="PICKUP",e[e.CP=2]="CP",e[e.RACE_CP=3]="RACE_CP",e[e.MAP_ICON=4]="MAP_ICON",e[e.TEXT_3D_LABEL=5]="TEXT_3D_LABEL",e[e.AREA=6]="AREA",e[e.ACTOR=7]="ACTOR",e))(S||{}),Be=(e=>(e[e.MAX_TYPES=8]="MAX_TYPES",e[e.MAX_AREA_TYPES=5]="MAX_AREA_TYPES",e[e.MAX_OBJECT_TYPES=3]="MAX_OBJECT_TYPES",e[e.INVALID_ID=0]="INVALID_ID",e))(Be||{}),xe=(e=>(e[e.GLOBAL=0]="GLOBAL",e[e.PLAYER=1]="PLAYER",e[e.DYNAMIC=2]="DYNAMIC",e))(xe||{}),j=(e=>(e[e.AREA_ID=0]="AREA_ID",e[e.ATTACHED_OBJECT=1]="ATTACHED_OBJECT",e[e.ATTACHED_PLAYER=2]="ATTACHED_PLAYER",e[e.ATTACHED_VEHICLE=3]="ATTACHED_VEHICLE",e[e.ATTACH_OFFSET_X=4]="ATTACH_OFFSET_X",e[e.ATTACH_OFFSET_Y=5]="ATTACH_OFFSET_Y",e[e.ATTACH_OFFSET_Z=6]="ATTACH_OFFSET_Z",e[e.ATTACH_R_X=7]="ATTACH_R_X",e[e.ATTACH_R_Y=8]="ATTACH_R_Y",e[e.ATTACH_R_Z=9]="ATTACH_R_Z",e[e.ATTACH_X=10]="ATTACH_X",e[e.ATTACH_Y=11]="ATTACH_Y",e[e.ATTACH_Z=12]="ATTACH_Z",e[e.COLOR=13]="COLOR",e[e.DRAW_DISTANCE=14]="DRAW_DISTANCE",e[e.EXTRA_ID=15]="EXTRA_ID",e[e.HEALTH=16]="HEALTH",e[e.INTERIOR_ID=17]="INTERIOR_ID",e[e.INVULNERABLE=18]="INVULNERABLE",e[e.MAX_X=19]="MAX_X",e[e.MAX_Y=20]="MAX_Y",e[e.MAX_Z=21]="MAX_Z",e[e.MIN_X=22]="MIN_X",e[e.MIN_Y=23]="MIN_Y",e[e.MIN_Z=24]="MIN_Z",e[e.MODEL_ID=25]="MODEL_ID",e[e.MOVE_R_X=26]="MOVE_R_X",e[e.MOVE_R_Y=27]="MOVE_R_Y",e[e.MOVE_R_Z=28]="MOVE_R_Z",e[e.MOVE_SPEED=29]="MOVE_SPEED",e[e.MOVE_X=30]="MOVE_X",e[e.MOVE_Y=31]="MOVE_Y",e[e.MOVE_Z=32]="MOVE_Z",e[e.NEXT_X=33]="NEXT_X",e[e.NEXT_Y=34]="NEXT_Y",e[e.NEXT_Z=35]="NEXT_Z",e[e.PLAYER_ID=36]="PLAYER_ID",e[e.PRIORITY=37]="PRIORITY",e[e.ROTATION=38]="ROTATION",e[e.R_X=39]="R_X",e[e.R_Y=40]="R_Y",e[e.R_Z=41]="R_Z",e[e.SIZE=42]="SIZE",e[e.STREAM_DISTANCE=43]="STREAM_DISTANCE",e[e.STYLE=44]="STYLE",e[e.SYNC_ROTATION=45]="SYNC_ROTATION",e[e.TEST_LOS=46]="TEST_LOS",e[e.TYPE=47]="TYPE",e[e.WORLD_ID=48]="WORLD_ID",e[e.X=49]="X",e[e.Y=50]="Y",e[e.Z=51]="Z",e))(j||{}),Bt=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHt=2]="RIGHt",e))(Bt||{}),Ke=(e=>(e[e.SIZE_32x32=10]="SIZE_32x32",e[e.SIZE_64x32=20]="SIZE_64x32",e[e.SIZE_64x64=30]="SIZE_64x64",e[e.SIZE_128x32=40]="SIZE_128x32",e[e.SIZE_128x64=50]="SIZE_128x64",e[e.SIZE_128x128=60]="SIZE_128x128",e[e.SIZE_256x32=70]="SIZE_256x32",e[e.SIZE_256x64=80]="SIZE_256x64",e[e.SIZE_256x128=90]="SIZE_256x128",e[e.SIZE_256x256=100]="SIZE_256x256",e[e.SIZE_512x64=110]="SIZE_512x64",e[e.SIZE_512x128=120]="SIZE_512x128",e[e.SIZE_512x256=130]="SIZE_512x256",e[e.SIZE_512x512=140]="SIZE_512x512",e))(Ke||{});const l_=e=>samp.callNative("DestroyDynamic3DTextLabel","i",e),o_=e=>!!samp.callNative("IsValidDynamic3DTextLabel","i",e),d_=(e,t,a,i,n,r=!0,s=100,l=0,o=-1,d=-1,c=v.ACTOR_SD,u=-1,p=0)=>samp.callNative("CreateDynamicActor","iffffifiiifii",e,t,a,i,n,r,s,l,o,d,c,u,p),c_=e=>samp.callNative("DestroyDynamicActor","i",e),__=e=>!!samp.callNative("IsValidDynamicActor","i",e),h_=(e,t)=>!!samp.callNative("IsDynamicActorStreamedIn","ii",e,t),u_=e=>samp.callNative("GetDynamicActorVirtualWorld","i",e),m_=(e,t)=>samp.callNative("SetDynamicActorVirtualWorld","ii",e,t),p_=(e,t,a,i,n,r,s,l,o)=>samp.callNative("ApplyDynamicActorAnimation","issfiiiii",e,t,a,i,n,r,s,l,o),f_=e=>samp.callNative("ClearDynamicActorAnimations","i",e),g_=e=>{const[t,a]=samp.callNative("GetDynamicActorFacingAngle","iF",e);return{angle:t,ret:a}},P_=(e,t)=>samp.callNative("SetDynamicActorFacingAngle","if",e,t),S_=e=>{const[t,a,i,n]=samp.callNative("GetDynamicActorPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},y_=(e,t,a,i)=>samp.callNative("SetDynamicActorPos","ifff",e,t,a,i),I_=e=>{const[t,a]=samp.callNative("GetDynamicActorHealth","iF",e);return{health:t,ret:a}},E_=(e,t)=>samp.callNative("SetDynamicActorHealth","if",e,t),A_=(e,t=!0)=>samp.callNative("SetDynamicActorInvulnerable","ii",e,t),C_=e=>!!samp.callNative("IsDynamicActorInvulnerable","i",e),N_=e=>samp.callNative("GetPlayerTargetDynamicActor","i",e),T_=e=>samp.callNative("GetPlayerCameraTargetDynActor","i",e),D_=e=>{const[t,a,i=0,n=0,r=0,s=0,l=0,o=0,d]=samp.callNative("GetDynamicActorAnimation","iSSFIIIIIii",e,32,32);return{animLib:t,animName:a,fDelta:i,loop:n,lockX:r,lockY:s,freeze:l,time:o,ret:d}},v_=(e,t,a,i=-1,n=-1,r=-1)=>samp.callNative("CreateDynamicCircle","fffiii",e,t,a,i,n,r),w_=(e,t,a,i,n,r=-1,s=-1,l=-1)=>samp.callNative("CreateDynamicCylinder","fffffiii",e,t,a,i,n,r,s,l),R_=(e,t,a,i,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicSphere","ffffiii",e,t,a,i,n,r,s),L_=(e,t,a,i,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicRectangle","ffffiii",e,t,a,i,n,r,s),b_=(e,t,a,i,n,r,s=-1,l=-1,o=-1)=>samp.callNative("CreateDynamicCuboid","ffffffiii",e,t,a,i,n,r,s,l,o),O_=(e,t=Number.MIN_VALUE,a=Number.MAX_VALUE,i=-1,n=-1,r=-1)=>samp.callNative("CreateDynamicPolygon","affiiii",e,t,a,e.length,i,n,r),G_=e=>samp.callNative("DestroyDynamicArea","i",e),F_=e=>!!samp.callNative("IsValidDynamicArea","i",e),B_=e=>samp.callNative("GetDynamicAreaType","i",e),x_=e=>{const[t,a]=samp.callNative("GetDynamicPolygonPoints","iAi",e,xt(e));return{points:t,ret:a}},xt=e=>samp.callNative("GetDynamicPolygonNumberPoints","i",e),k_=(e,t,a=!1)=>!!samp.callNative("IsPlayerInDynamicArea","iii",e,t,a),M_=(e,t=!1)=>!!samp.callNative("IsPlayerInAnyDynamicArea","ii",e,t),V_=(e,t=!1)=>!!samp.callNative("IsAnyPlayerInDynamicArea","ii",e,t),H_=(e=!1)=>!!samp.callNative("IsAnyPlayerInAnyDynamicArea","i",e),U_=e=>{const[t,a]=samp.callNative("GetPlayerDynamicAreas","iAi",e,kt(e));return{areas:t,ret:a}},kt=e=>samp.callNative("GetPlayerNumberDynamicAreas","i",e),W_=(e,t,a,i)=>!!samp.callNative("IsPointInDynamicArea","ifff",e,t,a,i),j_=(e,t,a)=>!!samp.callNative("IsPointInAnyDynamicArea","fff",e,t,a),K_=(e,t,a,i,n,r,s)=>!!samp.callNative("IsLineInDynamicArea","iffffff",e,t,a,i,n,r,s),Z_=(e,t,a,i,n,r)=>!!samp.callNative("IsLineInAnyDynamicArea","ffffff",e,t,a,i,n,r),X_=(e,t,a)=>{const[i,n]=samp.callNative("GetDynamicAreasForPoint","fffAi",e,t,a,Mt(e,t,a));return{areas:i,ret:n}},Mt=(e,t,a)=>samp.callNative("GetNumberDynamicAreasForPoint","fff",e,t,a),Y_=(e,t,a,i,n,r)=>{const[s,l]=samp.callNative("GetDynamicAreasForLine","ffffffAi",e,t,a,i,n,r,Vt(e,t,a,i,n,r));return{areas:s,ret:l}},Vt=(e,t,a,i,n,r)=>samp.callNative("GetNumberDynamicAreasForLine","ffffff",e,t,a,i,n,r),z_=(e,t,a=xe.DYNAMIC,i=65535,n=0,r=0,s=0)=>samp.callNative("AttachDynamicAreaToObject","iiiifff",e,t,a,i,n,r,s),$_=(e,t,a=0,i=0,n=0)=>samp.callNative("AttachDynamicAreaToPlayer","iifff",e,t,a,i,n),J_=(e,t,a=0,i=0,n=0)=>samp.callNative("AttachDynamicAreaToVehicle","iifff",e,t,a,i,n),Q_=(e,t)=>samp.callNative("ToggleDynAreaSpectateMode","ii",e,t),q_=e=>!!samp.callNative("IsToggleDynAreaSpectateMode","i",e),eh=(e,t,a,i,n=-1,r=-1,s=-1,l=v.CP_SD,o=-1,d=0)=>samp.callNative("CreateDynamicCP","ffffiiifii",e,t,a,i,n,r,s,l,o,d),Ht=e=>samp.callNative("DestroyDynamicCP","i",e),Ut=e=>!!samp.callNative("IsValidDynamicCP","i",e),th=(e,t,a)=>samp.callNative("TogglePlayerDynamicCP","iii",e,t,a),ah=(e,t)=>samp.callNative("TogglePlayerAllDynamicCPs","ii",e,t),ih=(e,t)=>!!samp.callNative("IsPlayerInDynamicCP","ii",e,t),nh=e=>samp.callNative("GetPlayerVisibleDynamicCP","i",e),rh=(e,t,a)=>{const[i,n]=samp.callNative("Streamer_GetFloatData","iiiF",e,t,a);return{val:i,ret:n}},sh=(e,t,a,i)=>samp.callNative("Streamer_SetFloatData","iiif",e,t,a,i),lh=(e,t,a)=>samp.callNative("Streamer_GetIntData","iii",e,t,a),oh=(e,t,a,i)=>samp.callNative("Streamer_SetIntData","iiii",e,t,a,i),dh=(e,t,a)=>{const[i,n]=samp.callNative("Streamer_GetArrayData","iiiAi",e,t,a,Wt(e,t,a));return{arrayData:i,ret:n}},ch=(e,t,a,i)=>samp.callNative("Streamer_SetArrayData","iiiai",e,t,a,i,i.length),_h=(e,t,a,i)=>!!samp.callNative("Streamer_IsInArrayData","iiii",e,t,a,i),hh=(e,t,a,i)=>samp.callNative("Streamer_AppendArrayData","iiii",e,t,a,i),uh=(e,t,a,i)=>samp.callNative("Streamer_RemoveArrayData","iiii",e,t,a,i),Wt=(e,t,a)=>samp.callNative("Streamer_GetArrayDataLength","iii",e,t,a),mh=e=>samp.callNative("Streamer_GetUpperBound","i",e);var ke=(e=>(e[e.LOCAL=0]="LOCAL",e[e.GLOBAL=1]="GLOBAL",e[e.LOCAL_CHECKPOINT=2]="LOCAL_CHECKPOINT",e[e.GLOBAL_CHECKPOINT=3]="GLOBAL_CHECKPOINT",e))(ke||{});const ph=(e,t,a,i,n,r=-1,s=-1,l=-1,o=v.MAP_ICON_SD,d=0,c=-1,u=0)=>samp.callNative("CreateDynamicMapIcon","fffiiiiifiii",e,t,a,i,n,r,s,l,o,d,c,u),fh=e=>samp.callNative("DestroyDynamicMapIcon","i",e),gh=e=>!!samp.callNative("IsValidDynamicMapIcon","i",e),Ph=(e,t,a,i,n,r,s,l=v.OBJECT_SD,o=v.OBJECT_DD,d=[-1],c=[-1],u=[-1],p=[-1],g=0)=>samp.callNative("CreateDynamicObjectEx","iffffffffaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,u,p,g,d.length,c.length,u.length,p.length),Sh=(e,t,a,i,n,r=v.PICKUP_SD,s=[-1],l=[-1],o=[-1],d=[-1],c=0)=>samp.callNative("CreateDynamicPickupEx","iiffffaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,s.length,l.length,o.length,d.length),yh=(e,t,a,i,n=v.CP_SD,r=[-1],s=[-1],l=[-1],o=[-1],d=0)=>samp.callNative("CreateDynamicCPEx","fffffaaaaiiiii",e,t,a,i,n,r,s,l,o,d,r.length,s.length,l.length,o.length),Ih=(e,t,a,i,n,r,s,l,o=v.RACE_CP_SD,d=[-1],c=[-1],u=[-1],p=[-1],g=0)=>samp.callNative("CreateDynamicRaceCPEx","iffffffffaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,u,p,g,d.length,c.length,u.length,p.length),Eh=(e,t,a,i,n,r=ke.LOCAL,s=v.MAP_ICON_SD,l=[-1],o=[-1],d=[-1],c=[-1],u=0)=>samp.callNative("CreateDynamicMapIconEx","fffiiifaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,u,l.length,o.length,d.length,c.length),Ah=(e,t,a,i=[-1],n=[-1],r=[-1])=>samp.callNative("CreateDynamicCircleEx","fffaaaiii",e,t,a,i,n,r,i.length,n.length,r.length),Ch=(e,t,a,i,n,r=[-1],s=[-1],l=[-1])=>samp.callNative("CreateDynamicCylinderEx","fffffaaaiii",e,t,a,i,n,r,s,l,r.length,s.length,l.length),Nh=(e,t,a,i,n=[-1],r=[-1],s=[-1])=>samp.callNative("CreateDynamicSphereEx","ffffaaaiii",e,t,a,i,n,r,s,n.length,r.length,s.length),Th=(e,t,a,i,n=[-1],r=[-1],s=[-1])=>samp.callNative("CreateDynamicRectangleEx","ffffaaaiii",e,t,a,i,n,r,s,n.length,r.length,s.length),Dh=(e,t,a,i,n,r,s=[-1],l=[-1],o=[-1])=>samp.callNative("CreateDynamicCuboidEx","ffffffaaaiii",e,t,a,i,n,r,s,l,o,s.length,l.length,o.length),vh=(e,t=Number.MIN_VALUE,a=Number.MAX_VALUE,i=[-1],n=[-1],r=[-1])=>samp.callNative("CreateDynamicPolygonEx","affiaaaiii",e,t,a,e.length,i,n,r,i.length,n.length,r.length),wh=(e,t,a,i,n,r=!0,s=100,l=v.ACTOR_SD,o=[0],d=[-1],c=[-1],u=[-1],p=0)=>samp.callNative("CreateDynamicActorEx","iffffiffaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,u,p,o.length,d.length,c.length,u.length),Rh=(e,t,a,i,n,r=3)=>{const[s,l]=samp.callNative("Streamer_GetDistanceToItem","fffiiFi",e,t,a,i,n,r);return{distance:s,ret:l}},Lh=(e,t,a,i)=>samp.callNative("Streamer_ToggleItem","iiii",e,t,a,i),bh=(e,t,a)=>!!samp.callNative("Streamer_IsToggleItem","iii",e,t,a),Oh=(e,t,a,i=[-1])=>samp.callNative("Streamer_ToggleAllItems","iiiai",e,t,a,i,i.length),Gh=(e,t,a)=>samp.callNative("Streamer_GetItemInternalID","iii",e,t,a),Fh=(e,t,a)=>samp.callNative("Streamer_GetItemStreamerID","iii",e,t,a),Bh=(e,t,a)=>!!samp.callNative("Streamer_IsItemVisible","iii",e,t,a),xh=(e,t,a=1)=>samp.callNative("Streamer_DestroyAllVisibleItems","iii",e,t,a),kh=(e,t,a=1)=>samp.callNative("Streamer_CountVisibleItems","iii",e,t,a),Mh=(e,t=1)=>samp.callNative("Streamer_DestroyAllItems","ii",e,t),Vh=(e,t=1)=>samp.callNative("Streamer_CountItems","ii",e,t),Hh=(e,t,a,i,n=32,r=300,s=-1)=>{const[l=[],o=0]=samp.callNative("Streamer_GetNearbyItems","fffiAifi",e,t,a,i,n,r,s);return l.slice(0,o)},Uh=(e,t,a=32)=>{const[i=[],n=0]=samp.callNative("Streamer_GetAllVisibleItems","iiAi",e,t,a);return i.slice(0,n)},Wh=(e,t)=>{const[a,i,n,r]=samp.callNative("Streamer_GetItemPos","iiFFF",e,t);return{x:a,y:i,z:n,ret:r}},jh=(e,t,a,i,n)=>samp.callNative("Streamer_SetItemPos","iifff",e,t,a,i,n),Kh=(e,t)=>{const[a,i,n,r]=samp.callNative("Streamer_GetItemOffset","iiFFF",e,t);return{x:a,y:i,z:n,ret:r}},Zh=(e,t,a,i,n)=>samp.callNative("Streamer_SetItemOffset","iifff",e,t,a,i,n),Xh=(e,t,a,i,n,r,s,l=-1,o=-1,d=-1,c=v.OBJECT_SD,u=v.OBJECT_DD,p=-1,g=0)=>samp.callNative("CreateDynamicObject","iffffffiiiffii",e,t,a,i,n,r,s,l,o,d,c,u,p,g),Yh=e=>samp.callNative("DestroyDynamicObject","i",e),zh=e=>!!samp.callNative("IsValidDynamicObject","i",e),$h=e=>{const[t,a,i,n]=samp.callNative("GetDynamicObjectPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},Jh=(e,t,a,i)=>samp.callNative("SetDynamicObjectPos","ifff",e,t,a,i),Qh=e=>{const[t,a,i,n]=samp.callNative("GetDynamicObjectRot","iFFF",e);return{rx:t,ry:a,rz:i,ret:n}},qh=(e,t,a,i)=>samp.callNative("SetDynamicObjectRot","ifff",e,t,a,i),eu=(e,t,a,i,n,r=-1e3,s=-1e3,l=-1e3)=>samp.callNative("MoveDynamicObject","ifffffff",e,t,a,i,n,r,s,l),tu=e=>samp.callNative("StopDynamicObject","i",e),au=e=>!!samp.callNative("IsDynamicObjectMoving","i",e),iu=(e,t)=>samp.callNative("AttachCameraToDynamicObject","ii",e,t),nu=(e,t,a,i,n,r,s,l,o=!0)=>samp.callNative("AttachDynamicObjectToObject","iiffffffi",e,t,a,i,n,r,s,l,o),ru=(e,t,a,i,n,r,s,l)=>samp.callNative("AttachDynamicObjectToPlayer","iiffffff",e,t,a,i,n,r,s,l),su=(e,t,a,i,n,r,s,l)=>samp.callNative("AttachDynamicObjectToVehicle","iiffffff",e,t,a,i,n,r,s,l),lu=(e,t)=>samp.callNative("EditDynamicObject","ii",e,t),ou=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialUsed","ii",e,t),du=(e,t)=>samp.callNative("RemoveDynamicObjectMaterial","ii",e,t),cu=(e,t,a,i,n,r=0)=>samp.callNative("SetDynamicObjectMaterial","iiissi",e,t,a,i,n,r),_u=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialTextUsed","ii",e,t),hu=(e,t)=>samp.callNative("RemoveDynamicObjectMaterialText","ii",e,t),uu=e=>samp.callNative("GetPlayerCameraTargetDynObject","i",e),mu=e=>!!samp.callNative("SetDynamicObjectNoCameraCol","i",e),pu=e=>!!samp.callNative("GetDynamicObjectNoCameraCol","i",e),fu=(e,t,a,i,n,r=-1,s=-1,l=-1,o=v.PICKUP_SD,d=-1,c=0)=>samp.callNative("CreateDynamicPickup","iifffiiifii",e,t,a,i,n,r,s,l,o,d,c),gu=e=>!!samp.callNative("DestroyDynamicPickup","i",e),Pu=e=>!!samp.callNative("IsValidDynamicPickup","i",e),Su=(e,t,a,i,n,r,s,l,o=-1,d=-1,c=-1,u=v.RACE_CP_SD,p=-1,g=0)=>samp.callNative("CreateDynamicRaceCP","ifffffffiiifii",e,t,a,i,n,r,s,l,o,d,c,u,p,g),yu=(e,t,a)=>samp.callNative("TogglePlayerDynamicRaceCP","iii",e,t,a),Iu=(e,t)=>samp.callNative("TogglePlayerAllDynamicRaceCPs","ii",e,t),Eu=(e,t)=>!!samp.callNative("IsPlayerInDynamicRaceCP","ii",e,t),Au=e=>samp.callNative("GetPlayerVisibleDynamicRaceCP","i",e),Cu=()=>samp.callNative("Streamer_GetTickRate",""),Nu=(e=50)=>samp.callNative("Streamer_SetTickRate","i",e),Tu=e=>samp.callNative("Streamer_GetPlayerTickRate","i",e),Du=(e,t=50)=>samp.callNative("Streamer_SetPlayerTickRate","ii",e,t),vu=(e=!1)=>samp.callNative("Streamer_ToggleChunkStream","i",e),wu=()=>!!samp.callNative("Streamer_IsToggleChunkStream",""),jt=(e,t=-1)=>samp.callNative("Streamer_GetChunkTickRate","ii",e,t),Kt=(e,t,a=-1)=>samp.callNative("Streamer_SetChunkTickRate","iii",e,t,a),Ru=e=>samp.callNative("Streamer_GetChunkSize","i",e),Lu=(e,t)=>samp.callNative("Streamer_SetChunkSize","ii",e,t),bu=e=>samp.callNative("Streamer_GetMaxItems","i",e),Ou=(e,t)=>samp.callNative("Streamer_SetMaxItems","ii",e,t),Zt=(e,t=-1)=>samp.callNative("Streamer_GetVisibleItems","ii",e,t),Xt=(e,t,a=-1)=>samp.callNative("Streamer_SetVisibleItems","iii",e,t,a),Yt=(e,t=-1)=>{const[a,i]=samp.callNative("Streamer_GetRadiusMultiplier","iFi",e,t);return{multiplier:a,ret:i}},zt=(e,t,a=-1)=>samp.callNative("Streamer_SetRadiusMultiplier","ifi",e,t,a),Gu=()=>{const[e,t]=samp.callNative("Streamer_GetTypePriority","Ai",Be.MAX_TYPES);return{priority:e,ret:t}},Fu=e=>samp.callNative("Streamer_SetTypePriority","ai",e,Be.MAX_TYPES),Bu=()=>{const[e,t]=samp.callNative("Streamer_GetCellDistance","F");return{distance:e,ret:t}},xu=(e=600)=>samp.callNative("Streamer_SetCellDistance","f",e),ku=()=>{const[e,t]=samp.callNative("Streamer_GetCellSize","F");return{size:e,ret:t}},Mu=(e=300)=>samp.callNative("Streamer_SetCellSize","f",e),Vu=(e,t,a)=>samp.callNative("Streamer_ToggleItemStatic","iii",e,t,a),Hu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemStatic","ii",e,t),Uu=(e,t,a)=>samp.callNative("Streamer_ToggleItemInvAreas","iii",e,t,a),Wu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemInvAreas","ii",e,t),ju=(e,t,a)=>samp.callNative("Streamer_ToggleItemCallbacks","iii",e,t,a),Ku=(e,t)=>!!samp.callNative("Streamer_IsToggleItemCallbacks","ii",e,t),Zu=e=>samp.callNative("Streamer_ToggleErrorCallback","i",e),Xu=()=>!!samp.callNative("Streamer_IsToggleErrorCallback",""),Yu=e=>samp.callNative("Streamer_AmxUnloadDestroyItems","i",e),zu=()=>samp.callNative("Streamer_ProcessActiveItems",""),$u=(e,t)=>samp.callNative("Streamer_ToggleIdleUpdate","ii",e,t),Ju=e=>!!samp.callNative("Streamer_IsToggleIdleUpdate","i",e),Qu=(e,t)=>samp.callNative("Streamer_ToggleCameraUpdate","ii",e,t),qu=e=>!!samp.callNative("Streamer_IsToggleCameraUpdate","i",e),em=(e,t,a)=>samp.callNative("Streamer_ToggleItemUpdate","iii",e,t,a),tm=(e,t)=>!!samp.callNative("Streamer_IsToggleItemUpdate","ii",e,t),am=()=>{const[e,t]=samp.callNative("Streamer_GetLastUpdateTime","F");return{time:e,ret:t}},im=(e,t=-1)=>samp.callNative("Streamer_Update","ii",e,t),nm=(e,t,a,i,n=-1,r=-1,s=-1,l=-1,o=!0)=>samp.callNative("Streamer_UpdateEx","ifffiiiii",e,t,a,i,n,r,s,l,o),$t=new Map([["AIRPORT",[{n:"thrw_barl_thrw",d:2}]],["ATTRACTORS",[{n:"Stepsit_in",d:1.67},{n:"Stepsit_loop",d:3.33},{n:"Stepsit_out",d:1.67}]],["BAR",[{n:"Barcustom_get",d:3},{n:"Barcustom_loop",d:2},{n:"Barcustom_order",d:3.67},{n:"BARman_idle",d:8.33},{n:"Barserve_bottle",d:3},{n:"Barserve_give",d:2.33},{n:"Barserve_glass",d:3.67},{n:"Barserve_in",d:1.67},{n:"Barserve_loop",d:2.33},{n:"Barserve_order",d:3.67},{n:"dnk_stndF_loop",d:2.33},{n:"dnk_stndM_loop",d:2.33}]],["BASEBALL",[{n:"Bat_1",d:.9},{n:"Bat_2",d:1.13},{n:"Bat_3",d:1.2},{n:"Bat_4",d:1},{n:"Bat_block",d:.47},{n:"Bat_Hit_1",d:.83},{n:"Bat_Hit_2",d:1.07},{n:"Bat_Hit_3",d:1.13},{n:"Bat_IDLE",d:.93},{n:"Bat_M",d:.53},{n:"BAT_PART",d:.53}]],["BD_FIRE",[{n:"BD_Fire1",d:1.83},{n:"BD_Fire2",d:1.67},{n:"BD_Fire3",d:1.83},{n:"BD_GF_Wave",d:5.07},{n:"BD_Panic_01",d:3.33},{n:"BD_Panic_02",d:3.33},{n:"BD_Panic_03",d:3.33},{n:"BD_Panic_04",d:3.33},{n:"BD_Panic_Loop",d:3.33},{n:"Grlfrd_Kiss_03",d:7},{n:"M_smklean_loop",d:5},{n:"Playa_Kiss_03",d:7},{n:"wash_up",d:3}]],["BEACH",[{n:"bather",d:4.2},{n:"Lay_Bac_Loop",d:2.67},{n:"ParkSit_M_loop",d:3.67},{n:"ParkSit_W_loop",d:3.33},{n:"SitnWait_loop_W",d:1.33}]],["benchpress",[{n:"gym_bp_celebrate",d:5},{n:"gym_bp_down",d:1},{n:"gym_bp_getoff",d:8.67},{n:"gym_bp_geton",d:5.33},{n:"gym_bp_up_A",d:2.33},{n:"gym_bp_up_B",d:2.67},{n:"gym_bp_up_smooth",d:1.33}]],["BF_injection",[{n:"BF_getin_LHS",d:1},{n:"BF_getin_RHS",d:1},{n:"BF_getout_LHS",d:1.13},{n:"BF_getout_RHS",d:1.13}]],["BIKED",[{n:"BIKEd_Back",d:.1},{n:"BIKEd_drivebyFT",d:.2},{n:"BIKEd_drivebyLHS",d:.2},{n:"BIKEd_drivebyRHS",d:.2},{n:"BIKEd_Fwd",d:.2},{n:"BIKEd_getoffBACK",d:1.47},{n:"BIKEd_getoffLHS",d:1},{n:"BIKEd_getoffRHS",d:1},{n:"BIKEd_hit",d:.03},{n:"BIKEd_jumponL",d:.97},{n:"BIKEd_jumponR",d:.97},{n:"BIKEd_kick",d:1.07},{n:"BIKEd_Left",d:.1},{n:"BIKEd_passenger",d:.03},{n:"BIKEd_pushes",d:.8},{n:"BIKEd_Ride",d:.03},{n:"BIKEd_Right",d:.1},{n:"BIKEd_shuffle",d:.43},{n:"BIKEd_Still",d:.03}]],["BIKEH",[{n:"BIKEh_Back",d:.1},{n:"BIKEh_drivebyFT",d:.2},{n:"BIKEh_drivebyLHS",d:.2},{n:"BIKEh_drivebyRHS",d:.2},{n:"BIKEh_Fwd",d:.2},{n:"BIKEh_getoffBACK",d:1.7},{n:"BIKEh_getoffLHS",d:.77},{n:"BIKEh_getoffRHS",d:.73},{n:"BIKEh_hit",d:.03},{n:"BIKEh_jumponL",d:1.47},{n:"BIKEh_jumponR",d:1.5},{n:"BIKEh_kick",d:1.07},{n:"BIKEh_Left",d:.13},{n:"BIKEh_passenger",d:.03},{n:"BIKEh_pushes",d:.97},{n:"BIKEh_Ride",d:.03},{n:"BIKEh_Right",d:.13},{n:"BIKEh_Still",d:.03}]],["BIKELEAP",[{n:"bk_blnce_in",d:1.9},{n:"bk_blnce_out",d:1},{n:"bk_jmp",d:.4},{n:"bk_rdy_in",d:.5},{n:"bk_rdy_out",d:.4},{n:"struggle_cesar",d:.47},{n:"struggle_driver",d:.47},{n:"truck_driver",d:.73},{n:"truck_getin",d:2.5}]],["BIKES",[{n:"BIKEs_Back",d:.1},{n:"BIKEs_drivebyFT",d:.2},{n:"BIKEs_drivebyLHS",d:.2},{n:"BIKEs_drivebyRHS",d:.2},{n:"BIKEs_Fwd",d:.2},{n:"BIKEs_getoffBACK",d:2.43},{n:"BIKEs_getoffLHS",d:1.1},{n:"BIKEs_getoffRHS",d:1.1},{n:"BIKEs_hit",d:.03},{n:"BIKEs_jumponL",d:.9},{n:"BIKEs_jumponR",d:.9},{n:"BIKEs_kick",d:1},{n:"BIKEs_Left",d:.1},{n:"BIKEs_passenger",d:.03},{n:"BIKEs_pushes",d:.73},{n:"BIKEs_Ride",d:.03},{n:"BIKEs_Right",d:.1},{n:"BIKEs_Snatch_L",d:.43},{n:"BIKEs_Snatch_R",d:.43},{n:"BIKEs_Still",d:.03}]],["BIKEV",[{n:"BIKEv_Back",d:.17},{n:"BIKEv_drivebyFT",d:.17},{n:"BIKEv_drivebyLHS",d:.23},{n:"BIKEv_drivebyRHS",d:.2},{n:"BIKEv_Fwd",d:.2},{n:"BIKEv_getoffBACK",d:1.7},{n:"BIKEv_getoffLHS",d:.67},{n:"BIKEv_getoffRHS",d:.67},{n:"BIKEv_hit",d:.03},{n:"BIKEv_jumponL",d:.67},{n:"BIKEv_jumponR",d:.67},{n:"BIKEv_kick",d:1},{n:"BIKEv_Left",d:.1},{n:"BIKEv_passenger",d:.03},{n:"BIKEv_pushes",d:.73},{n:"BIKEv_Ride",d:.03},{n:"BIKEv_Right",d:.1},{n:"BIKEv_Still",d:.03}]],["BIKE_DBZ",[{n:"Pass_Driveby_BWD",d:.83},{n:"Pass_Driveby_FWD",d:.83},{n:"Pass_Driveby_LHS",d:.83},{n:"Pass_Driveby_RHS",d:.83}]],["BLOWJOBZ",[{n:"BJ_Car_End_P",d:4.13},{n:"BJ_Car_End_W",d:3.67},{n:"BJ_Car_Loop_P",d:.67},{n:"BJ_Car_Loop_W",d:.67},{n:"BJ_Car_Start_P",d:2.33},{n:"BJ_Car_Start_W",d:2.33},{n:"BJ_Couch_End_P",d:7.67},{n:"BJ_Couch_End_W",d:7.67},{n:"BJ_Couch_Loop_P",d:2},{n:"BJ_Couch_Loop_W",d:2},{n:"BJ_Couch_Start_P",d:5.33},{n:"BJ_Couch_Start_W",d:5.33},{n:"BJ_Stand_End_P",d:4.87},{n:"BJ_Stand_End_W",d:5.33},{n:"BJ_Stand_Loop_P",d:.67},{n:"BJ_Stand_Loop_W",d:.67},{n:"BJ_Stand_Start_P",d:2},{n:"BJ_Stand_Start_W",d:2}]],["BMX",[{n:"BMX_back",d:.1},{n:"BMX_bunnyhop",d:.33},{n:"BMX_drivebyFT",d:.2},{n:"BMX_driveby_LHS",d:.2},{n:"BMX_driveby_RHS",d:.2},{n:"BMX_fwd",d:.13},{n:"BMX_getoffBACK",d:1.37},{n:"BMX_getoffLHS",d:.73},{n:"BMX_getoffRHS",d:.63},{n:"BMX_jumponL",d:.9},{n:"BMX_jumponR",d:.9},{n:"BMX_Left",d:.13},{n:"BMX_pedal",d:.73},{n:"BMX_pushes",d:.8},{n:"BMX_Ride",d:.03},{n:"BMX_Right",d:.13},{n:"BMX_sprint",d:.67},{n:"BMX_still",d:.03}]],["BOMBER",[{n:"BOM_Plant",d:2.67},{n:"BOM_Plant_2Idle",d:1},{n:"BOM_Plant_Crouch_In",d:.8},{n:"BOM_Plant_Crouch_Out",d:.8},{n:"BOM_Plant_In",d:.87},{n:"BOM_Plant_Loop",d:.8}]],["BOX",[{n:"boxhipin",d:6.53},{n:"boxhipup",d:5},{n:"boxshdwn",d:6.1},{n:"boxshup",d:5.2},{n:"bxhipwlk",d:1.5},{n:"bxhwlki",d:.97},{n:"bxshwlk",d:2.5},{n:"bxshwlki",d:.97},{n:"bxwlko",d:.53},{n:"catch_box",d:1.5}]],["BSKTBALL",[{n:"BBALL_def_jump_shot",d:1.17},{n:"BBALL_def_loop",d:1},{n:"BBALL_def_stepL",d:.6},{n:"BBALL_def_stepR",d:.6},{n:"BBALL_Dnk",d:1.4},{n:"BBALL_Dnk_Gli",d:.37},{n:"BBALL_Dnk_Gli_O",d:.37},{n:"BBALL_Dnk_Lnch",d:.2},{n:"BBALL_Dnk_Lnch_O",d:.2},{n:"BBALL_Dnk_Lnd",d:.93},{n:"BBALL_Dnk_O",d:.1},{n:"BBALL_idle",d:2.43},{n:"BBALL_idle2",d:2.67},{n:"BBALL_idle2_O",d:2.67},{n:"BBALL_idleloop",d:.67},{n:"BBALL_idleloop_O",d:.67},{n:"BBALL_idle_O",d:2.43},{n:"BBALL_Jump_Cancel",d:1.07},{n:"BBALL_Jump_Cancel_O",d:1.07},{n:"BBALL_Jump_End",d:.93},{n:"BBALL_Jump_Shot",d:1.67},{n:"BBALL_Jump_Shot_O",d:.67},{n:"BBALL_Net_Dnk_O",d:1.83},{n:"BBALL_pickup",d:1.83},{n:"BBALL_pickup_O",d:1.83},{n:"BBALL_react_miss",d:.8},{n:"BBALL_react_score",d:1.1},{n:"BBALL_run",d:.9},{n:"BBALL_run_O",d:.9},{n:"BBALL_SkidStop_L",d:.5},{n:"BBALL_SkidStop_L_O",d:.5},{n:"BBALL_SkidStop_R",d:.5},{n:"BBALL_SkidStop_R_O",d:.5},{n:"BBALL_walk",d:1.07},{n:"BBALL_WalkStop_L",d:.5},{n:"BBALL_WalkStop_L_O",d:.5},{n:"BBALL_WalkStop_R",d:.5},{n:"BBALL_WalkStop_R_O",d:.5},{n:"BBALL_walk_O",d:1.07},{n:"BBALL_walk_start",d:.2},{n:"BBALL_walk_start_O",d:.2}]],["BUDDY",[{n:"buddy_crouchfire",d:.87},{n:"buddy_crouchreload",d:1.1},{n:"buddy_fire",d:.8},{n:"buddy_fire_poor",d:1.33},{n:"buddy_reload",d:1.3}]],["BUS",[{n:"BUS_close",d:.4},{n:"BUS_getin_LHS",d:.33},{n:"BUS_getin_RHS",d:2.17},{n:"BUS_getout_LHS",d:.8},{n:"BUS_getout_RHS",d:1.87},{n:"BUS_jacked_LHS",d:1.13},{n:"BUS_open",d:1.47},{n:"BUS_open_RHS",d:1.2},{n:"BUS_pullout_LHS",d:.8}]],["CAMERA",[{n:"camcrch_cmon",d:2.33},{n:"camcrch_idleloop",d:2},{n:"camcrch_stay",d:2},{n:"camcrch_to_camstnd",d:1.33},{n:"camstnd_cmon",d:3},{n:"camstnd_idleloop",d:2},{n:"camstnd_lkabt",d:4.33},{n:"camstnd_to_camcrch",d:1},{n:"piccrch_in",d:1.33},{n:"piccrch_out",d:2},{n:"piccrch_take",d:1},{n:"picstnd_in",d:1},{n:"picstnd_out",d:.67},{n:"picstnd_take",d:1}]],["CAR",[{n:"Fixn_Car_Loop",d:5},{n:"Fixn_Car_Out",d:2.33},{n:"flag_drop",d:4.5},{n:"Sit_relaxed",d:.03},{n:"Tap_hand",d:.33},{n:"Tyd2car_bump",d:.83},{n:"Tyd2car_high",d:8},{n:"Tyd2car_low",d:6.67},{n:"Tyd2car_med",d:6.67},{n:"Tyd2car_TurnL",d:1},{n:"Tyd2car_TurnR",d:1}]],["CARRY",[{n:"crry_prtial",d:.03},{n:"liftup",d:1.53},{n:"liftup05",d:.63},{n:"liftup105",d:.67},{n:"putdwn",d:1.13},{n:"putdwn05",d:.67},{n:"putdwn105",d:.53}]],["CAR_CHAT",[{n:"carfone_in",d:6},{n:"carfone_loopA",d:4},{n:"carfone_loopA_to_B",d:1},{n:"carfone_loopB",d:5},{n:"carfone_loopB_to_A",d:.67},{n:"carfone_out",d:3},{n:"CAR_Sc1_BL",d:11.67},{n:"CAR_Sc1_BR",d:11.67},{n:"CAR_Sc1_FL",d:11.67},{n:"CAR_Sc1_FR",d:11.67},{n:"CAR_Sc2_FL",d:5},{n:"CAR_Sc3_BR",d:10.83},{n:"CAR_Sc3_FL",d:10.83},{n:"CAR_Sc3_FR",d:10.83},{n:"CAR_Sc4_BL",d:4.4},{n:"CAR_Sc4_BR",d:6.53},{n:"CAR_Sc4_FL",d:10},{n:"CAR_Sc4_FR",d:10},{n:"car_talkm_in",d:1.67},{n:"car_talkm_loop",d:4.33},{n:"car_talkm_out",d:7.33}]],["CASINO",[{n:"cards_in",d:.67},{n:"cards_loop",d:3.33},{n:"cards_lose",d:3.33},{n:"cards_out",d:.67},{n:"cards_pick_01",d:4.67},{n:"cards_pick_02",d:5.33},{n:"cards_raise",d:1.67},{n:"cards_win",d:3},{n:"dealone",d:.8},{n:"manwinb",d:1.5},{n:"manwind",d:1.67},{n:"Roulette_bet",d:2.33},{n:"Roulette_in",d:.67},{n:"Roulette_loop",d:3.67},{n:"Roulette_lose",d:2.67},{n:"Roulette_out",d:.67},{n:"Roulette_win",d:2.33},{n:"Slot_bet_01",d:4.67},{n:"Slot_bet_02",d:2},{n:"Slot_in",d:3.67},{n:"Slot_lose_out",d:4},{n:"Slot_Plyr",d:1.33},{n:"Slot_wait",d:3.67},{n:"Slot_win_out",d:9.33},{n:"wof",d:1.47}]],["CHAINSAW",[{n:"CSAW_1",d:1},{n:"CSAW_2",d:1.03},{n:"CSAW_3",d:.87},{n:"CSAW_G",d:1.17},{n:"CSAW_Hit_1",d:.83},{n:"CSAW_Hit_2",d:1.07},{n:"CSAW_Hit_3",d:1.13},{n:"csaw_part",d:.13},{n:"IDLE_csaw",d:1.5},{n:"WEAPON_csaw",d:1.33},{n:"WEAPON_csawlo",d:1.9}]],["CHOPPA",[{n:"CHOPPA_back",d:.1},{n:"CHOPPA_bunnyhop",d:.33},{n:"CHOPPA_drivebyFT",d:.2},{n:"CHOPPA_driveby_LHS",d:.2},{n:"CHOPPA_driveby_RHS",d:.2},{n:"CHOPPA_fwd",d:.2},{n:"CHOPPA_getoffBACK",d:1.27},{n:"CHOPPA_getoffLHS",d:.73},{n:"CHOPPA_getoffRHS",d:.63},{n:"CHOPPA_jumponL",d:.7},{n:"CHOPPA_jumponR",d:.8},{n:"CHOPPA_Left",d:.13},{n:"CHOPPA_pedal",d:.73},{n:"CHOPPA_Pushes",d:.8},{n:"CHOPPA_ride",d:.03},{n:"CHOPPA_Right",d:.13},{n:"CHOPPA_sprint",d:.67},{n:"CHOPPA_Still",d:.03}]],["CLOTHES",[{n:"CLO_Buy",d:2.07},{n:"CLO_In",d:4},{n:"CLO_Out",d:2.67},{n:"CLO_Pose_Hat",d:3.33},{n:"CLO_Pose_In",d:3.13},{n:"CLO_Pose_In_O",d:4},{n:"CLO_Pose_Legs",d:3.33},{n:"CLO_Pose_Loop",d:6},{n:"CLO_Pose_Out",d:4},{n:"CLO_Pose_Out_O",d:4},{n:"CLO_Pose_Shoes",d:3.33},{n:"CLO_Pose_Torso",d:3.33},{n:"CLO_Pose_Watch",d:3.33}]],["COACH",[{n:"COACH_inL",d:2.17},{n:"COACH_inR",d:2.2},{n:"COACH_opnL",d:1.2},{n:"COACH_opnR",d:1.2},{n:"COACH_outL",d:1.73},{n:"COACH_outR",d:1.83}]],["COLT45",[{n:"2guns_crouchfire",d:.8},{n:"colt45_crouchfire",d:.8},{n:"colt45_crouchreload",d:1},{n:"colt45_fire",d:.73},{n:"colt45_fire_2hands",d:.87},{n:"colt45_reload",d:.93},{n:"sawnoff_reload",d:.93}]],["COP_AMBIENT",[{n:"Copbrowse_in",d:5},{n:"Copbrowse_loop",d:2.33},{n:"Copbrowse_nod",d:4},{n:"Copbrowse_out",d:2.67},{n:"Copbrowse_shake",d:1.83},{n:"Coplook_in",d:1.33},{n:"Coplook_loop",d:2.67},{n:"Coplook_nod",d:5.33},{n:"Coplook_out",d:.67},{n:"Coplook_shake",d:4},{n:"Coplook_think",d:3.33},{n:"Coplook_watch",d:2}]],["COP_DVBYZ",[{n:"COP_Dvby_B",d:.83},{n:"COP_Dvby_FT",d:.83},{n:"COP_Dvby_L",d:.83},{n:"COP_Dvby_R",d:.83}]],["CRACK",[{n:"Bbalbat_Idle_01",d:6.67},{n:"Bbalbat_Idle_02",d:10},{n:"crckdeth1",d:2.17},{n:"crckdeth2",d:3},{n:"crckdeth3",d:2.17},{n:"crckdeth4",d:1.67},{n:"crckidle1",d:3.5},{n:"crckidle2",d:3.33},{n:"crckidle3",d:3.33},{n:"crckidle4",d:2.67}]],["CRIB",[{n:"CRIB_Console_Loop",d:3},{n:"CRIB_Use_Switch",d:1.17},{n:"PED_Console_Loop",d:3},{n:"PED_Console_Loose",d:3.5},{n:"PED_Console_Win",d:3.5}]],["DAM_JUMP",[{n:"DAM_Dive_Loop",d:1.33},{n:"DAM_Land",d:2.6},{n:"DAM_Launch",d:2.4},{n:"Jump_Roll",d:3.17},{n:"SF_JumpWall",d:3}]],["DANCING",[{n:"bd_clap",d:3.2},{n:"bd_clap1",d:2.63},{n:"dance_loop",d:1.17},{n:"DAN_Down_A",d:1},{n:"DAN_Left_A",d:1},{n:"DAN_Loop_A",d:2},{n:"DAN_Right_A",d:1},{n:"DAN_Up_A",d:1},{n:"dnce_M_a",d:2.13},{n:"dnce_M_b",d:1.93},{n:"dnce_M_c",d:1.93},{n:"dnce_M_d",d:2.43},{n:"dnce_M_e",d:.9}]],["DEALER",[{n:"DEALER_DEAL",d:3.17},{n:"DEALER_IDLE",d:6.67},{n:"DEALER_IDLE_01",d:5},{n:"DEALER_IDLE_02",d:4},{n:"DEALER_IDLE_03",d:4.67},{n:"DRUGS_BUY",d:3.17},{n:"shop_pay",d:4.67}]],["DILDO",[{n:"DILDO_1",d:.97},{n:"DILDO_2",d:1.1},{n:"DILDO_3",d:1.17},{n:"DILDO_block",d:.47},{n:"DILDO_G",d:1.47},{n:"DILDO_Hit_1",d:.77},{n:"DILDO_Hit_2",d:1.03},{n:"DILDO_Hit_3",d:.9},{n:"DILDO_IDLE",d:.87}]],["DODGE",[{n:"Cover_Dive_01",d:6},{n:"Cover_Dive_02",d:6},{n:"Crushed",d:.93},{n:"Crush_Jump",d:3.17}]],["DOZER",[{n:"DOZER_Align_LHS",d:.97},{n:"DOZER_Align_RHS",d:.93},{n:"DOZER_getin_LHS",d:.43},{n:"DOZER_getin_RHS",d:.43},{n:"DOZER_getout_LHS",d:1.07},{n:"DOZER_getout_RHS",d:.77},{n:"DOZER_Jacked_LHS",d:1.27},{n:"DOZER_Jacked_RHS",d:1.07},{n:"DOZER_pullout_LHS",d:.73},{n:"DOZER_pullout_RHS",d:.7}]],["DRIVEBYS",[{n:"Gang_DrivebyLHS",d:.83},{n:"Gang_DrivebyLHS_Bwd",d:.83},{n:"Gang_DrivebyLHS_Fwd",d:.83},{n:"Gang_DrivebyRHS",d:.83},{n:"Gang_DrivebyRHS_Bwd",d:.83},{n:"Gang_DrivebyRHS_Fwd",d:.83},{n:"Gang_DrivebyTop_LHS",d:.83},{n:"Gang_DrivebyTop_RHS",d:.83}]],["FAT",[{n:"FatIdle",d:1.5},{n:"FatIdle_armed",d:1.53},{n:"FatIdle_Csaw",d:1.5},{n:"FatIdle_Rocket",d:1.6},{n:"FatRun",d:.77},{n:"FatRun_armed",d:.77},{n:"FatRun_Csaw",d:.77},{n:"FatRun_Rocket",d:.77},{n:"FatSprint",d:.6},{n:"FatWalk",d:1.17},{n:"FatWalkstart",d:.2},{n:"FatWalkstart_Csaw",d:.2},{n:"FatWalkSt_armed",d:.2},{n:"FatWalkSt_Rocket",d:.2},{n:"FatWalk_armed",d:1.17},{n:"FatWalk_Csaw",d:1.17},{n:"FatWalk_Rocket",d:1.17},{n:"IDLE_tired",d:1.07}]],["FIGHT_B",[{n:"FightB_1",d:.73},{n:"FightB_2",d:1.1},{n:"FightB_3",d:1.2},{n:"FightB_block",d:.47},{n:"FightB_G",d:1.07},{n:"FightB_IDLE",d:.8},{n:"FightB_M",d:.5},{n:"HitB_1",d:.73},{n:"HitB_2",d:.83},{n:"HitB_3",d:1.43}]],["FIGHT_C",[{n:"FightC_1",d:.83},{n:"FightC_2",d:1.03},{n:"FightC_3",d:1},{n:"FightC_block",d:.47},{n:"FightC_blocking",d:3.2},{n:"FightC_G",d:.77},{n:"FightC_IDLE",d:1},{n:"FightC_M",d:.9},{n:"FightC_Spar",d:3.2},{n:"HitC_1",d:.3},{n:"HitC_2",d:.67},{n:"HitC_3",d:.83}]],["FIGHT_D",[{n:"FightD_1",d:.93},{n:"FightD_2",d:1.87},{n:"FightD_3",d:.9},{n:"FightD_block",d:.47},{n:"FightD_G",d:.83},{n:"FightD_IDLE",d:1.53},{n:"FightD_M",d:1.07},{n:"HitD_1",d:.67},{n:"HitD_2",d:1.83},{n:"HitD_3",d:.97}]],["FIGHT_E",[{n:"FightKick",d:.77},{n:"FightKick_B",d:1.03},{n:"Hit_fightkick",d:.5},{n:"Hit_fightkick_B",d:1.13}]],["FINALE",[{n:"FIN_Climb_In",d:2.9},{n:"FIN_Cop1_ClimbOut2",d:6},{n:"FIN_Cop1_Loop",d:2},{n:"FIN_Cop1_Stomp",d:1},{n:"FIN_Hang_L",d:.57},{n:"FIN_Hang_Loop",d:4},{n:"FIN_Hang_R",d:.57},{n:"FIN_Hang_Slip",d:3.33},{n:"FIN_Jump_On",d:5.6},{n:"FIN_Land_Car",d:.67},{n:"FIN_Land_Die",d:2.37},{n:"FIN_LegsUp",d:1},{n:"FIN_LegsUp_L",d:.5},{n:"FIN_LegsUp_Loop",d:1.33},{n:"FIN_LegsUp_R",d:.5},{n:"FIN_Let_Go",d:.17}]],["FINALE2",[{n:"FIN_Cop1_ClimbOut",d:4},{n:"FIN_Cop1_Fall",d:.43},{n:"FIN_Cop1_Loop",d:2},{n:"FIN_Cop1_Shot",d:2.07},{n:"FIN_Cop1_Swing",d:1.17},{n:"FIN_Cop2_ClimbOut",d:5.33},{n:"FIN_Switch_P",d:3.97},{n:"FIN_Switch_S",d:2.17}]],["FLAME",[{n:"FLAME_fire",d:.8}]],["Flowers",[{n:"Flower_attack",d:.8},{n:"Flower_attack_M",d:1.23},{n:"Flower_Hit",d:.83}]],["FOOD",[{n:"EAT_Burger",d:5},{n:"EAT_Chicken",d:5},{n:"EAT_Pizza",d:5},{n:"EAT_Vomit_P",d:8},{n:"EAT_Vomit_SK",d:8},{n:"FF_Dam_Bkw",d:.67},{n:"FF_Dam_Fwd",d:.67},{n:"FF_Dam_Left",d:.67},{n:"FF_Dam_Right",d:.67},{n:"FF_Die_Bkw",d:.67},{n:"FF_Die_Fwd",d:.67},{n:"FF_Die_Left",d:.67},{n:"FF_Die_Right",d:.67},{n:"FF_Sit_Eat1",d:2.83},{n:"FF_Sit_Eat2",d:2.67},{n:"FF_Sit_Eat3",d:2.67},{n:"FF_Sit_In",d:3},{n:"FF_Sit_In_L",d:2},{n:"FF_Sit_In_R",d:2},{n:"FF_Sit_Look",d:8},{n:"FF_Sit_Loop",d:2.67},{n:"FF_Sit_Out_180",d:2.83},{n:"FF_Sit_Out_L_180",d:1.33},{n:"FF_Sit_Out_R_180",d:1.33},{n:"SHP_Thank",d:1.17},{n:"SHP_Tray_In",d:.67},{n:"SHP_Tray_Lift",d:1.67},{n:"SHP_Tray_Lift_In",d:.5},{n:"SHP_Tray_Lift_Loop",d:8},{n:"SHP_Tray_Lift_Out",d:.5},{n:"SHP_Tray_Out",d:.67},{n:"SHP_Tray_Pose",d:.67},{n:"SHP_Tray_Return",d:1.33}]],["Freeweights",[{n:"gym_barbell",d:2.37},{n:"gym_free_A",d:1.93},{n:"gym_free_B",d:2.33},{n:"gym_free_celebrate",d:3.33},{n:"gym_free_down",d:.57},{n:"gym_free_loop",d:.67},{n:"gym_free_pickup",d:3.17},{n:"gym_free_putdown",d:3.17},{n:"gym_free_up_smooth",d:1}]],["GANGS",[{n:"DEALER_DEAL",d:1.17},{n:"DEALER_IDLE",d:2},{n:"drnkbr_prtl",d:2.67},{n:"drnkbr_prtl_F",d:2.67},{n:"DRUGS_BUY",d:1.17},{n:"hndshkaa",d:4},{n:"hndshkba",d:2.33},{n:"hndshkca",d:3.33},{n:"hndshkcb",d:3.33},{n:"hndshkda",d:2},{n:"hndshkea",d:1},{n:"hndshkfa",d:4.17},{n:"hndshkfa_swt",d:4.17},{n:"Invite_No",d:3.33},{n:"Invite_Yes",d:4.33},{n:"leanIDLE",d:1},{n:"leanIN",d:1},{n:"leanOUT",d:1},{n:"prtial_gngtlkA",d:4},{n:"prtial_gngtlkB",d:6.17},{n:"prtial_gngtlkC",d:7.33},{n:"prtial_gngtlkD",d:3},{n:"prtial_gngtlkE",d:2.83},{n:"prtial_gngtlkF",d:5.17},{n:"prtial_gngtlkG",d:7},{n:"prtial_gngtlkH",d:6},{n:"prtial_hndshk_01",d:1.67},{n:"prtial_hndshk_biz_01",d:2.33},{n:"shake_cara",d:1.67},{n:"shake_carK",d:1.27},{n:"shake_carSH",d:1.5},{n:"smkcig_prtl",d:7.5},{n:"smkcig_prtl_F",d:7.5}]],["GFUNK",[{n:"Dance_B1",d:1.27},{n:"Dance_B2",d:1.27},{n:"Dance_B3",d:1.27},{n:"Dance_B4",d:1.27},{n:"Dance_B5",d:1.27},{n:"Dance_B6",d:1.27},{n:"Dance_B7",d:1.27},{n:"Dance_B8",d:1.27},{n:"Dance_B9",d:1.27},{n:"Dance_B10",d:1.27},{n:"Dance_B11",d:1.27},{n:"Dance_B12",d:1.27},{n:"Dance_B13",d:1.27},{n:"Dance_B14",d:1.27},{n:"Dance_B15",d:1.27},{n:"Dance_B16",d:1.27},{n:"Dance_G1",d:1.27},{n:"Dance_G2",d:1.27},{n:"Dance_G3",d:1.27},{n:"Dance_G4",d:1.27},{n:"Dance_G5",d:1.27},{n:"Dance_G6",d:1.27},{n:"Dance_G7",d:1.27},{n:"Dance_G8",d:1.27},{n:"Dance_G9",d:1.27},{n:"Dance_G10",d:1.27},{n:"Dance_G11",d:1.27},{n:"Dance_G12",d:1.27},{n:"Dance_G13",d:1.27},{n:"Dance_G14",d:1.27},{n:"Dance_G15",d:1.27},{n:"Dance_G16",d:1.27},{n:"dance_loop",d:1.17}]],["GHANDS",[{n:"gsign1",d:4.77},{n:"gsign1LH",d:2.73},{n:"gsign2",d:2.13},{n:"gsign2LH",d:2.33},{n:"gsign3",d:4.67},{n:"gsign3LH",d:2},{n:"gsign4",d:4.17},{n:"gsign4LH",d:4.67},{n:"gsign5",d:6.2},{n:"gsign5LH",d:2},{n:"LHGsign1",d:2},{n:"LHGsign2",d:2},{n:"LHGsign3",d:2},{n:"LHGsign4",d:2},{n:"LHGsign5",d:2},{n:"RHGsign1",d:2},{n:"RHGsign2",d:2},{n:"RHGsign3",d:2},{n:"RHGsign4",d:2},{n:"RHGsign5",d:2}]],["GHETTO_DB",[{n:"GDB_Car2_PLY",d:9.5},{n:"GDB_Car2_SMO",d:9.5},{n:"GDB_Car2_SWE",d:9.5},{n:"GDB_Car_PLY",d:13.33},{n:"GDB_Car_RYD",d:13.33},{n:"GDB_Car_SMO",d:13.33},{n:"GDB_Car_SWE",d:13.33}]],["goggles",[{n:"goggles_put_on",d:.8}]],["GRAFFITI",[{n:"graffiti_Chkout",d:4.67},{n:"spraycan_fire",d:2.33}]],["GRAVEYARD",[{n:"mrnF_loop",d:4.67},{n:"mrnM_loop",d:2.67},{n:"prst_loopa",d:4}]],["GRENADE",[{n:"WEAPON_start_throw",d:.2},{n:"WEAPON_throw",d:.87},{n:"WEAPON_throwu",d:.67}]],["GYMNASIUM",[{n:"GYMshadowbox",d:5.1},{n:"gym_bike_celebrate",d:1.93},{n:"gym_bike_fast",d:.4},{n:"gym_bike_faster",d:.4},{n:"gym_bike_getoff",d:1.67},{n:"gym_bike_geton",d:1.67},{n:"gym_bike_pedal",d:.4},{n:"gym_bike_slow",d:.43},{n:"gym_bike_still",d:1.67},{n:"gym_jog_falloff",d:2.17},{n:"gym_shadowbox",d:5.1},{n:"gym_tread_celebrate",d:2.5},{n:"gym_tread_falloff",d:2},{n:"gym_tread_getoff",d:3.33},{n:"gym_tread_geton",d:2.5},{n:"gym_tread_jog",d:.77},{n:"gym_tread_sprint",d:.67},{n:"gym_tread_tired",d:1.33},{n:"gym_tread_walk",d:1.07},{n:"gym_walk_falloff",d:3.33},{n:"Pedals_fast",d:.4},{n:"Pedals_med",d:.4},{n:"Pedals_slow",d:.43},{n:"Pedals_still",d:.43}]],["HAIRCUTS",[{n:"BRB_Beard_01",d:4.5},{n:"BRB_Buy",d:4.17},{n:"BRB_Cut",d:1.7},{n:"BRB_Cut_In",d:.83},{n:"BRB_Cut_Out",d:1.33},{n:"BRB_Hair_01",d:3.83},{n:"BRB_Hair_02",d:4.5},{n:"BRB_In",d:1.33},{n:"BRB_Loop",d:2.67},{n:"BRB_Out",d:.67},{n:"BRB_Sit_In",d:2.07},{n:"BRB_Sit_Loop",d:7},{n:"BRB_Sit_Out",d:3}]],["HEIST9",[{n:"CAS_G2_GasKO",d:3.33},{n:"swt_wllpk_L",d:2.67},{n:"swt_wllpk_L_back",d:.5},{n:"swt_wllpk_R",d:3.67},{n:"swt_wllpk_R_back",d:.43},{n:"swt_wllshoot_in_L",d:1},{n:"swt_wllshoot_in_R",d:1.3},{n:"swt_wllshoot_out_L",d:2},{n:"swt_wllshoot_out_R",d:1.43},{n:"Use_SwipeCard",d:1.17}]],["INT_HOUSE",[{n:"BED_In_L",d:3.33},{n:"BED_In_R",d:3.33},{n:"BED_Loop_L",d:3.33},{n:"BED_Loop_R",d:3.33},{n:"BED_Out_L",d:3.33},{n:"BED_Out_R",d:3.33},{n:"LOU_In",d:1.83},{n:"LOU_Loop",d:3.33},{n:"LOU_Out",d:2},{n:"wash_up",d:3}]],["INT_OFFICE",[{n:"FF_Dam_Fwd",d:.67},{n:"OFF_Sit_2Idle_180",d:2.83},{n:"OFF_Sit_Bored_Loop",d:2.83},{n:"OFF_Sit_Crash",d:3.33},{n:"OFF_Sit_Drink",d:4.17},{n:"OFF_Sit_Idle_Loop",d:2.07},{n:"OFF_Sit_In",d:2.77},{n:"OFF_Sit_Read",d:3.33},{n:"OFF_Sit_Type_Loop",d:3.33},{n:"OFF_Sit_Watch",d:2}]],["INT_SHOP",[{n:"shop_cashier",d:6.67},{n:"shop_in",d:1},{n:"shop_lookA",d:2},{n:"shop_lookB",d:3},{n:"shop_loop",d:2},{n:"shop_out",d:1.33},{n:"shop_pay",d:6.67},{n:"shop_shelf",d:2.33}]],["JST_BUISNESS",[{n:"girl_01",d:3.33},{n:"girl_02",d:11.33},{n:"player_01",d:24.83},{n:"smoke_01",d:25}]],["KART",[{n:"KART_getin_LHS",d:.83},{n:"KART_getin_RHS",d:.83},{n:"KART_getout_LHS",d:.83},{n:"KART_getout_RHS",d:.83}]],["KISSING",[{n:"BD_GF_Wave",d:5.07},{n:"gfwave2",d:2.67},{n:"GF_CarArgue_01",d:5},{n:"GF_CarArgue_02",d:5},{n:"GF_CarSpot",d:5},{n:"GF_StreetArgue_01",d:5},{n:"GF_StreetArgue_02",d:5},{n:"gift_get",d:5.33},{n:"gift_give",d:5.33},{n:"Grlfrd_Kiss_01",d:4.17},{n:"Grlfrd_Kiss_02",d:5.77},{n:"Grlfrd_Kiss_03",d:7},{n:"Playa_Kiss_01",d:5},{n:"Playa_Kiss_02",d:5.77},{n:"Playa_Kiss_03",d:7}]],["KNIFE",[{n:"KILL_Knife_Ped_Damage",d:2.23},{n:"KILL_Knife_Ped_Die",d:1.93},{n:"KILL_Knife_Player",d:2.67},{n:"KILL_Partial",d:.03},{n:"knife_1",d:1},{n:"knife_2",d:.93},{n:"knife_3",d:.87},{n:"Knife_4",d:.9},{n:"knife_block",d:.47},{n:"Knife_G",d:.9},{n:"knife_hit_1",d:.57},{n:"knife_hit_2",d:.63},{n:"knife_hit_3",d:1.6},{n:"knife_IDLE",d:1.3},{n:"knife_part",d:.53},{n:"WEAPON_knifeidle",d:1.3}]],["LAPDAN1",[{n:"LAPDAN_D",d:37.73},{n:"LAPDAN_P",d:37.73}]],["LAPDAN2",[{n:"LAPDAN_D",d:46.83},{n:"LAPDAN_P",d:46.83}]],["LAPDAN3",[{n:"LAPDAN_D",d:51.47},{n:"LAPDAN_P",d:51.47}]],["LOWRIDER",[{n:"F_smklean_loop",d:4},{n:"lrgirl_bdbnce",d:2.67},{n:"lrgirl_hair",d:2.33},{n:"lrgirl_hurry",d:2.83},{n:"lrgirl_idleloop",d:2.17},{n:"lrgirl_idle_to_l0",d:2.17},{n:"lrgirl_l0_bnce",d:.67},{n:"lrgirl_l0_loop",d:2},{n:"lrgirl_l0_to_l1",d:3.67},{n:"lrgirl_l12_to_l0",d:2},{n:"lrgirl_l1_bnce",d:.67},{n:"lrgirl_l1_loop",d:2},{n:"lrgirl_l1_to_l2",d:1.33},{n:"lrgirl_l2_bnce",d:.67},{n:"lrgirl_l2_loop",d:1.5},{n:"lrgirl_l2_to_l3",d:1.5},{n:"lrgirl_l345_to_l1",d:1},{n:"lrgirl_l3_bnce",d:.67},{n:"lrgirl_l3_loop",d:2},{n:"lrgirl_l3_to_l4",d:.67},{n:"lrgirl_l4_bnce",d:.67},{n:"lrgirl_l4_loop",d:2.33},{n:"lrgirl_l4_to_l5",d:1},{n:"lrgirl_l5_bnce",d:.83},{n:"lrgirl_l5_loop",d:1.67},{n:"M_smklean_loop",d:5},{n:"M_smkstnd_loop",d:5.33},{n:"prtial_gngtlkB",d:1.47},{n:"prtial_gngtlkC",d:1.5},{n:"prtial_gngtlkD",d:2.47},{n:"prtial_gngtlkE",d:3},{n:"prtial_gngtlkF",d:2.67},{n:"prtial_gngtlkG",d:2.67},{n:"prtial_gngtlkH",d:3.33},{n:"RAP_A_Loop",d:2.67},{n:"RAP_B_Loop",d:2.67},{n:"RAP_C_Loop",d:3},{n:"Sit_relaxed",d:.03},{n:"Tap_hand",d:.33}]],["MD_CHASE",[{n:"Carhit_Hangon",d:1.53},{n:"Carhit_Tumble",d:2.03},{n:"donutdrop",d:1.5},{n:"Fen_Choppa_L1",d:1.43},{n:"Fen_Choppa_L2",d:1.3},{n:"Fen_Choppa_L3",d:1.3},{n:"Fen_Choppa_R1",d:1.3},{n:"Fen_Choppa_R2",d:1.3},{n:"Fen_Choppa_R3",d:1.3},{n:"Hangon_Stun_loop",d:4.67},{n:"Hangon_Stun_Turn",d:4},{n:"MD_BIKE_2_HANG",d:1.37},{n:"MD_BIKE_Jmp_BL",d:1.1},{n:"MD_BIKE_Jmp_F",d:1},{n:"MD_BIKE_Lnd_BL",d:.9},{n:"MD_BIKE_Lnd_Die_BL",d:1.53},{n:"MD_BIKE_Lnd_Die_F",d:.8},{n:"MD_BIKE_Lnd_F",d:1.17},{n:"MD_BIKE_Lnd_Roll",d:2.7},{n:"MD_BIKE_Lnd_Roll_F",d:1.03},{n:"MD_BIKE_Punch",d:1.83},{n:"MD_BIKE_Punch_F",d:1.83},{n:"MD_BIKE_Shot_F",d:1.33},{n:"MD_HANG_Lnd_Roll",d:2.7},{n:"MD_HANG_Loop",d:1}]],["MD_END",[{n:"END_SC1_PLY",d:5},{n:"END_SC1_RYD",d:5},{n:"END_SC1_SMO",d:5},{n:"END_SC1_SWE",d:5},{n:"END_SC2_PLY",d:9},{n:"END_SC2_RYD",d:9},{n:"END_SC2_SMO",d:9},{n:"END_SC2_SWE",d:9}]],["MEDIC",[{n:"CPR",d:8.33}]],["MISC",[{n:"bitchslap",d:1.17},{n:"BMX_celebrate",d:1.57},{n:"BMX_comeon",d:.77},{n:"bmx_idleloop_01",d:3.33},{n:"bmx_idleloop_02",d:6.67},{n:"bmx_talkleft_in",d:.67},{n:"bmx_talkleft_loop",d:6.67},{n:"bmx_talkleft_out",d:.67},{n:"bmx_talkright_in",d:.67},{n:"bmx_talkright_loop",d:7.33},{n:"bmx_talkright_out",d:.67},{n:"bng_wndw",d:7.33},{n:"bng_wndw_02",d:7.33},{n:"Case_pickup",d:1},{n:"door_jet",d:5.33},{n:"GRAB_L",d:.4},{n:"GRAB_R",d:.4},{n:"Hiker_Pose",d:.33},{n:"Hiker_Pose_L",d:.33},{n:"Idle_Chat_02",d:7.23},{n:"KAT_Throw_K",d:3.33},{n:"KAT_Throw_O",d:3.33},{n:"KAT_Throw_P",d:3.33},{n:"PASS_Rifle_O",d:1.33},{n:"PASS_Rifle_Ped",d:1.33},{n:"PASS_Rifle_Ply",d:1.33},{n:"pickup_box",d:.4},{n:"Plane_door",d:5.33},{n:"Plane_exit",d:5.33},{n:"Plane_hijack",d:5.33},{n:"Plunger_01",d:3.33},{n:"Plyrlean_loop",d:2.67},{n:"plyr_shkhead",d:1.67},{n:"Run_Dive",d:8.27},{n:"Scratchballs_01",d:8.33},{n:"SEAT_LR",d:3.67},{n:"Seat_talk_01",d:3.67},{n:"Seat_talk_02",d:3.33},{n:"SEAT_watch",d:2.33},{n:"smalplane_door",d:6.33},{n:"smlplane_door",d:5.33},{n:"MTB_back",d:.1},{n:"MTB_bunnyhop",d:.33},{n:"MTB_drivebyFT",d:.2},{n:"MTB_driveby_LHS",d:.2},{n:"MTB_driveby_RHS",d:.2},{n:"MTB_fwd",d:.2},{n:"MTB_getoffBACK",d:1.53},{n:"MTB_getoffLHS",d:.73},{n:"MTB_getoffRHS",d:.73},{n:"MTB_jumponL",d:.8},{n:"MTB_jumponR",d:.83},{n:"MTB_Left",d:.13},{n:"MTB_pedal",d:.67},{n:"MTB_pushes",d:.8},{n:"MTB_Ride",d:.03},{n:"MTB_Right",d:.13},{n:"MTB_sprint",d:.8},{n:"MTB_still",d:.03},{n:"MscleWalkst_armed",d:.2},{n:"MscleWalkst_Csaw",d:.2},{n:"Mscle_rckt_run",d:.8},{n:"Mscle_rckt_walkst",d:.2},{n:"Mscle_run_Csaw",d:.8},{n:"MuscleIdle",d:1.5},{n:"MuscleIdle_armed",d:1.5},{n:"MuscleIdle_Csaw",d:1.5},{n:"MuscleIdle_rocket",d:1.5},{n:"MuscleRun",d:.8},{n:"MuscleRun_armed",d:.8},{n:"MuscleSprint",d:.57},{n:"MuscleWalk",d:1.07},{n:"MuscleWalkstart",d:.27},{n:"MuscleWalk_armed",d:1.07},{n:"Musclewalk_Csaw",d:1.07},{n:"Musclewalk_rocket",d:1.07}]],["NEVADA",[{n:"NEVADA_getin",d:1.87},{n:"NEVADA_getout",d:.93}]],["ON_LOOKERS",[{n:"lkaround_in",d:.33},{n:"lkaround_loop",d:7},{n:"lkaround_out",d:.33},{n:"lkup_in",d:1.67},{n:"lkup_loop",d:5.33},{n:"lkup_out",d:1},{n:"lkup_point",d:3.33},{n:"panic_cower",d:6.67},{n:"panic_hide",d:6.33},{n:"panic_in",d:.83},{n:"panic_loop",d:1.67},{n:"panic_out",d:.67},{n:"panic_point",d:6},{n:"panic_shout",d:8.67},{n:"Pointup_in",d:1},{n:"Pointup_loop",d:2.67},{n:"Pointup_out",d:1},{n:"Pointup_shout",d:3},{n:"point_in",d:.5},{n:"point_loop",d:3},{n:"point_out",d:.33},{n:"shout_01",d:2.67},{n:"shout_02",d:4},{n:"shout_in",d:1.67},{n:"shout_loop",d:2},{n:"shout_out",d:.33},{n:"wave_in",d:.83},{n:"wave_loop",d:1.5},{n:"wave_out",d:.83}]],["OTB",[{n:"betslp_in",d:1.33},{n:"betslp_lkabt",d:2.67},{n:"betslp_loop",d:2.67},{n:"betslp_out",d:1},{n:"betslp_tnk",d:5.6},{n:"wtchrace_cmon",d:5},{n:"wtchrace_in",d:1.67},{n:"wtchrace_loop",d:2.67},{n:"wtchrace_lose",d:4},{n:"wtchrace_out",d:1},{n:"wtchrace_win",d:4.33}]],["PARACHUTE",[{n:"FALL_skyDive",d:1.33},{n:"FALL_SkyDive_Accel",d:1.33},{n:"FALL_skyDive_DIE",d:1},{n:"FALL_SkyDive_L",d:1.33},{n:"FALL_SkyDive_R",d:1.33},{n:"PARA_decel",d:2},{n:"PARA_decel_O",d:2},{n:"PARA_float",d:2},{n:"PARA_float_O",d:2},{n:"PARA_Land",d:1.67},{n:"PARA_Land_O",d:2.17},{n:"PARA_Land_Water",d:2.33},{n:"PARA_Land_Water_O",d:2.17},{n:"PARA_open",d:2.83},{n:"PARA_open_O",d:2.33},{n:"PARA_Rip_Land_O",d:.9},{n:"PARA_Rip_Loop_O",d:1},{n:"PARA_Rip_O",d:.23},{n:"PARA_steerL",d:2},{n:"PARA_steerL_O",d:2},{n:"PARA_steerR",d:2},{n:"PARA_steerR_O",d:2}]],["PARK",[{n:"Tai_Chi_in",d:2.17},{n:"Tai_Chi_Loop",d:12},{n:"Tai_Chi_Out",d:.83}]],["PAULNMAC",[{n:"Piss_in",d:9},{n:"Piss_loop",d:6.67},{n:"Piss_out",d:11},{n:"PnM_Argue1_A",d:4.33},{n:"PnM_Argue1_B",d:4.33},{n:"PnM_Argue2_A",d:4.33},{n:"PnM_Argue2_B",d:4.33},{n:"PnM_Loop_A",d:5.33},{n:"PnM_Loop_B",d:5.33},{n:"wank_in",d:7.33},{n:"wank_loop",d:2.67},{n:"wank_out",d:11.67}]],["PED",[{n:"abseil",d:.03},{n:"ARRESTgun",d:.67},{n:"ATM",d:12.17},{n:"BIKE_elbowL",d:.97},{n:"BIKE_elbowR",d:.97},{n:"BIKE_fallR",d:1.63},{n:"BIKE_fall_off",d:1.07},{n:"BIKE_pickupL",d:1.07},{n:"BIKE_pickupR",d:1.07},{n:"BIKE_pullupL",d:1},{n:"BIKE_pullupR",d:1},{n:"bomber",d:.6},{n:"CAR_alignHI_LHS",d:.73},{n:"CAR_alignHI_RHS",d:.73},{n:"CAR_align_LHS",d:.13},{n:"CAR_align_RHS",d:.13},{n:"CAR_closedoorL_LHS",d:.6},{n:"CAR_closedoorL_RHS",d:.4},{n:"CAR_closedoor_LHS",d:.6},{n:"CAR_closedoor_RHS",d:.4},{n:"CAR_close_LHS",d:.73},{n:"CAR_close_RHS",d:.73},{n:"CAR_crawloutRHS",d:2.17},{n:"CAR_dead_LHS",d:.03},{n:"CAR_dead_RHS",d:.03},{n:"CAR_doorlocked_LHS",d:1.33},{n:"CAR_doorlocked_RHS",d:1.27},{n:"CAR_fallout_LHS",d:.57},{n:"CAR_fallout_RHS",d:.57},{n:"CAR_getinL_LHS",d:1},{n:"CAR_getinL_RHS",d:1},{n:"CAR_getin_LHS",d:1},{n:"CAR_getin_RHS",d:1},{n:"CAR_getoutL_LHS",d:.93},{n:"CAR_getoutL_RHS",d:1},{n:"CAR_getout_LHS",d:1.13},{n:"CAR_getout_RHS",d:.8},{n:"car_hookertalk",d:4.3},{n:"CAR_jackedLHS",d:2.9},{n:"CAR_jackedRHS",d:3.43},{n:"CAR_jumpin_LHS",d:1},{n:"CAR_LB",d:.23},{n:"CAR_LB_pro",d:.1},{n:"CAR_LB_weak",d:.23},{n:"CAR_LjackedLHS",d:3.57},{n:"CAR_LjackedRHS",d:3.47},{n:"CAR_Lshuffle_RHS",d:.4},{n:"CAR_Lsit",d:.03},{n:"CAR_open_LHS",d:1.1},{n:"CAR_open_RHS",d:1.1},{n:"CAR_pulloutL_LHS",d:2.93},{n:"CAR_pulloutL_RHS",d:2.93},{n:"CAR_pullout_LHS",d:2.3},{n:"CAR_pullout_RHS",d:2.8},{n:"CAR_Qjacked",d:3.3},{n:"CAR_rolldoor",d:.6},{n:"CAR_rolldoorLO",d:.6},{n:"CAR_rollout_LHS",d:1.63},{n:"CAR_rollout_RHS",d:1.27},{n:"CAR_shuffle_RHS",d:.4},{n:"CAR_sit",d:.03},{n:"CAR_sitp",d:.03},{n:"CAR_sitpLO",d:.03},{n:"CAR_sit_pro",d:.03},{n:"CAR_sit_weak",d:.03},{n:"CAR_tune_radio",d:.63},{n:"CLIMB_idle",d:.8},{n:"CLIMB_jump",d:.57},{n:"CLIMB_jump2fall",d:.03},{n:"CLIMB_jump_B",d:.97},{n:"CLIMB_Pull",d:.87},{n:"CLIMB_Stand",d:.8},{n:"CLIMB_Stand_finish",d:.2},{n:"cower",d:.8},{n:"Crouch_Roll_L",d:.93},{n:"Crouch_Roll_R",d:.93},{n:"DAM_armL_frmBK",d:.83},{n:"DAM_armL_frmFT",d:.83},{n:"DAM_armL_frmLT",d:.67},{n:"DAM_armR_frmBK",d:.83},{n:"DAM_armR_frmFT",d:.5},{n:"DAM_armR_frmRT",d:.27},{n:"DAM_LegL_frmBK",d:.83},{n:"DAM_LegL_frmFT",d:.83},{n:"DAM_LegL_frmLT",d:.83},{n:"DAM_LegR_frmBK",d:.83},{n:"DAM_LegR_frmFT",d:.83},{n:"DAM_LegR_frmRT",d:.83},{n:"DAM_stomach_frmBK",d:.83},{n:"DAM_stomach_frmFT",d:.83},{n:"DAM_stomach_frmLT",d:.83},{n:"DAM_stomach_frmRT",d:.83},{n:"DOOR_LHinge_O",d:1.07},{n:"DOOR_RHinge_O",d:1.07},{n:"DrivebyL_L",d:.2},{n:"DrivebyL_R",d:.2},{n:"Driveby_L",d:.2},{n:"Driveby_R",d:.2},{n:"DRIVE_BOAT",d:.03},{n:"DRIVE_BOAT_back",d:.1},{n:"DRIVE_BOAT_L",d:.1},{n:"DRIVE_BOAT_R",d:.1},{n:"Drive_L",d:.13},{n:"Drive_LO_l",d:.13},{n:"Drive_LO_R",d:.13},{n:"Drive_L_pro",d:.13},{n:"Drive_L_pro_slow",d:.13},{n:"Drive_L_slow",d:.13},{n:"Drive_L_weak",d:.13},{n:"Drive_L_weak_slow",d:.13},{n:"Drive_R",d:.13},{n:"Drive_R_pro",d:.13},{n:"Drive_R_pro_slow",d:.13},{n:"Drive_R_slow",d:.13},{n:"Drive_R_weak",d:.13},{n:"Drive_R_weak_slow",d:.13},{n:"Drive_truck",d:.03},{n:"DRIVE_truck_back",d:.1},{n:"DRIVE_truck_L",d:.13},{n:"DRIVE_truck_R",d:.13},{n:"Drown",d:2.5},{n:"DUCK_cower",d:.8},{n:"endchat_01",d:2},{n:"endchat_02",d:2},{n:"endchat_03",d:2.33},{n:"EV_dive",d:2.33},{n:"EV_step",d:1.07},{n:"facanger",d:.13},{n:"facgum",d:1.03},{n:"facsurp",d:.13},{n:"facsurpm",d:.13},{n:"factalk",d:2.33},{n:"facurios",d:.13},{n:"FALL_back",d:.73},{n:"FALL_collapse",d:1},{n:"FALL_fall",d:.73},{n:"FALL_front",d:.73},{n:"FALL_glide",d:.8},{n:"FALL_land",d:.47},{n:"FALL_skyDive",d:1.33},{n:"Fight2Idle",d:.33},{n:"FightA_1",d:.43},{n:"FightA_2",d:.77},{n:"FightA_3",d:.87},{n:"FightA_block",d:.47},{n:"FightA_G",d:.93},{n:"FightA_M",d:.4},{n:"FIGHTIDLE",d:1.3},{n:"FightShB",d:.47},{n:"FightShF",d:.53},{n:"FightSh_BWD",d:.67},{n:"FightSh_FWD",d:.67},{n:"FightSh_Left",d:.67},{n:"FightSh_Right",d:.67},{n:"flee_lkaround_01",d:2},{n:"FLOOR_hit",d:.37},{n:"FLOOR_hit_f",d:.4},{n:"fucku",d:1.33},{n:"gang_gunstand",d:.03},{n:"gas_cwr",d:1},{n:"getup",d:1.37},{n:"getup_front",d:1.37},{n:"gum_eat",d:5.33},{n:"GunCrouchBwd",d:1},{n:"GunCrouchFwd",d:.73},{n:"GunMove_BWD",d:1.03},{n:"GunMove_FWD",d:1},{n:"GunMove_L",d:1},{n:"GunMove_R",d:1},{n:"Gun_2_IDLE",d:.27},{n:"GUN_BUTT",d:.43},{n:"GUN_BUTT_crouch",d:.43},{n:"Gun_stand",d:.03},{n:"handscower",d:1.93},{n:"handsup",d:.6},{n:"HitA_1",d:.3},{n:"HitA_2",d:.53},{n:"HitA_3",d:.57},{n:"HIT_back",d:.5},{n:"HIT_behind",d:.67},{n:"HIT_front",d:.6},{n:"HIT_GUN_BUTT",d:.5},{n:"HIT_L",d:.7},{n:"HIT_R",d:.6},{n:"HIT_walk",d:.33},{n:"HIT_wall",d:.7},{n:"Idlestance_fat",d:1.67},{n:"idlestance_old",d:2},{n:"IDLE_armed",d:1.47},{n:"IDLE_chat",d:6.67},{n:"IDLE_csaw",d:1.53},{n:"Idle_Gang1",d:1.67},{n:"IDLE_HBHB",d:2.67},{n:"IDLE_ROCKET",d:1.57},{n:"IDLE_stance",d:1.5},{n:"IDLE_taxi",d:.87},{n:"IDLE_tired",d:1},{n:"Jetpack_Idle",d:.03},{n:"JOG_femaleA",d:.77},{n:"JOG_maleA",d:.77},{n:"JUMP_glide",d:.5},{n:"JUMP_land",d:.23},{n:"JUMP_launch",d:.2},{n:"JUMP_launch_R",d:.2},{n:"KART_drive",d:.03},{n:"KART_L",d:.13},{n:"KART_LB",d:.03},{n:"KART_R",d:.13},{n:"KD_left",d:.9},{n:"KD_right",d:.9},{n:"KO_shot_face",d:2.1},{n:"KO_shot_front",d:.57},{n:"KO_shot_stom",d:3.17},{n:"KO_skid_back",d:.97},{n:"KO_skid_front",d:1.13},{n:"KO_spin_L",d:.87},{n:"KO_spin_R",d:.93},{n:"pass_Smoke_in_car",d:1.73},{n:"phone_in",d:2.33},{n:"phone_out",d:2},{n:"phone_talk",d:2},{n:"Player_Sneak",d:1.33},{n:"Player_Sneak_walkstart",d:.3},{n:"roadcross",d:2},{n:"roadcross_female",d:4},{n:"roadcross_gang",d:2},{n:"roadcross_old",d:4},{n:"run_1armed",d:.77},{n:"run_armed",d:.7},{n:"run_civi",d:.73},{n:"run_csaw",d:.7},{n:"run_fat",d:.8},{n:"run_fatold",d:.8},{n:"run_gang1",d:.83},{n:"run_left",d:.67},{n:"run_old",d:.8},{n:"run_player",d:.73},{n:"run_right",d:.67},{n:"run_rocket",d:.77},{n:"Run_stop",d:.87},{n:"Run_stopR",d:.8},{n:"Run_Wuzi",d:.77},{n:"SEAT_down",d:1.5},{n:"SEAT_idle",d:2},{n:"SEAT_up",d:1.17},{n:"SHOT_leftP",d:.3},{n:"SHOT_partial",d:.37},{n:"SHOT_partial_B",d:.33},{n:"SHOT_rightP",d:.33},{n:"Shove_Partial",d:.53},{n:"Smoke_in_car",d:1.73},{n:"sprint_civi",d:.53},{n:"sprint_panic",d:.6},{n:"Sprint_Wuzi",d:.67},{n:"swat_run",d:.67},{n:"Swim_Tread",d:1.3},{n:"Tap_hand",d:.03},{n:"Tap_handP",d:.03},{n:"turn_180",d:.63},{n:"Turn_L",d:.8},{n:"Turn_R",d:.8},{n:"WALK_armed",d:1.07},{n:"WALK_civi",d:1.13},{n:"WALK_csaw",d:1.07},{n:"Walk_DoorPartial",d:.8},{n:"WALK_drunk",d:3.93},{n:"WALK_fat",d:1.33},{n:"WALK_fatold",d:1.17},{n:"WALK_gang1",d:1.4},{n:"WALK_gang2",d:1.4},{n:"WALK_old",d:1.4},{n:"WALK_player",d:1.2},{n:"WALK_rocket",d:1.07},{n:"WALK_shuffle",d:1.2},{n:"WALK_start",d:.27},{n:"WALK_start_armed",d:.2},{n:"WALK_start_csaw",d:.2},{n:"WALK_start_rocket",d:.2},{n:"Walk_Wuzi",d:1.17},{n:"WEAPON_crouch",d:.8},{n:"woman_idlestance",d:5.33},{n:"woman_run",d:.77},{n:"WOMAN_runbusy",d:.67},{n:"WOMAN_runfatold",d:1.2},{n:"woman_runpanic",d:.6},{n:"WOMAN_runsexy",d:.7},{n:"WOMAN_walkbusy",d:1},{n:"WOMAN_walkfatold",d:1.2},{n:"WOMAN_walknorm",d:1.13},{n:"WOMAN_walkold",d:1.2},{n:"WOMAN_walkpro",d:1.33},{n:"WOMAN_walksexy",d:1.17},{n:"WOMAN_walkshop",d:.97},{n:"XPRESSscratch",d:3.97}]],["PLAYER_DVBYS",[{n:"Plyr_DrivebyBwd",d:.83},{n:"Plyr_DrivebyFwd",d:.83},{n:"Plyr_DrivebyLHS",d:.83},{n:"Plyr_DrivebyRHS",d:.83}]],["PLAYIDLES",[{n:"shift",d:3.6},{n:"shldr",d:2.17},{n:"stretch",d:4.6},{n:"strleg",d:3.67},{n:"time",d:5.2}]],["POLICE",[{n:"CopTraf_Away",d:1.47},{n:"CopTraf_Come",d:2.87},{n:"CopTraf_Left",d:2},{n:"CopTraf_Stop",d:2},{n:"COP_getoutcar_LHS",d:.83},{n:"Cop_move_FWD",d:1},{n:"crm_drgbst_01",d:18.57},{n:"Door_Kick",d:1.33},{n:"plc_drgbst_01",d:20.6},{n:"plc_drgbst_02",d:7.57}]],["POOL",[{n:"POOL_ChalkCue",d:4.83},{n:"POOL_Idle_Stance",d:2},{n:"POOL_Long_Shot",d:1.67},{n:"POOL_Long_Shot_O",d:1.67},{n:"POOL_Long_Start",d:.67},{n:"POOL_Long_Start_O",d:.67},{n:"POOL_Med_Shot",d:1.67},{n:"POOL_Med_Shot_O",d:1.67},{n:"POOL_Med_Start",d:.67},{n:"POOL_Med_Start_O",d:.67},{n:"POOL_Place_White",d:2.5},{n:"POOL_Short_Shot",d:1.67},{n:"POOL_Short_Shot_O",d:1.67},{n:"POOL_Short_Start",d:.67},{n:"POOL_Short_Start_O",d:.67},{n:"POOL_Walk",d:1.27},{n:"POOL_Walk_Start",d:.2},{n:"POOL_XLong_Shot",d:1.67},{n:"POOL_XLong_Shot_O",d:1.67},{n:"POOL_XLong_Start",d:.67},{n:"POOL_XLong_Start_O",d:.67}]],["POOR",[{n:"WINWASH_Start",d:.43},{n:"WINWASH_Wash2Beg",d:2.13}]],["PYTHON",[{n:"python_crouchfire",d:1.2},{n:"python_crouchreload",d:1},{n:"python_fire",d:1.17},{n:"python_fire_poor",d:1.47},{n:"python_reload",d:.93}]],["QUAD",[{n:"QUAD_back",d:.1},{n:"QUAD_driveby_FT",d:.2},{n:"QUAD_driveby_LHS",d:.2},{n:"QUAD_driveby_RHS",d:.2},{n:"QUAD_FWD",d:.2},{n:"QUAD_getoff_B",d:1.63},{n:"QUAD_getoff_LHS",d:.67},{n:"QUAD_getoff_RHS",d:.7},{n:"QUAD_geton_LHS",d:.73},{n:"QUAD_geton_RHS",d:.73},{n:"QUAD_hit",d:.03},{n:"QUAD_kick",d:1.13},{n:"QUAD_Left",d:.13},{n:"QUAD_passenger",d:.03},{n:"QUAD_reverse",d:.17},{n:"QUAD_ride",d:.03},{n:"QUAD_Right",d:.13}]],["QUAD_DBZ",[{n:"Pass_Driveby_BWD",d:.83},{n:"Pass_Driveby_FWD",d:.83},{n:"Pass_Driveby_LHS",d:.83},{n:"Pass_Driveby_RHS",d:.83}]],["RAPPING",[{n:"Laugh_01",d:5.33},{n:"RAP_A_IN",d:.83},{n:"RAP_A_Loop",d:2.67},{n:"RAP_A_OUT",d:.33},{n:"RAP_B_IN",d:1},{n:"RAP_B_Loop",d:2.67},{n:"RAP_B_OUT",d:.87},{n:"RAP_C_Loop",d:3}]],["RIFLE",[{n:"RIFLE_crouchfire",d:.87},{n:"RIFLE_crouchload",d:1.27},{n:"RIFLE_fire",d:.8},{n:"RIFLE_fire_poor",d:.8},{n:"RIFLE_load",d:1.4}]],["RIOT",[{n:"RIOT_ANGRY",d:5},{n:"RIOT_ANGRY_B",d:.63},{n:"RIOT_challenge",d:3.23},{n:"RIOT_CHANT",d:1.73},{n:"RIOT_FUKU",d:.67},{n:"RIOT_PUNCHES",d:.67},{n:"RIOT_shout",d:1}]],["ROB_BANK",[{n:"CAT_Safe_End",d:.5},{n:"CAT_Safe_Open",d:3.33},{n:"CAT_Safe_Open_O",d:3.33},{n:"CAT_Safe_Rob",d:1.83},{n:"SHP_HandsUp_Scr",d:.67}]],["ROCKET",[{n:"idle_rocket",d:1.6},{n:"RocketFire",d:.97},{n:"run_rocket",d:.77},{n:"walk_rocket",d:1.07},{n:"WALK_start_rocket",d:.2}]],["RUNNINGMAN",[{n:"Dance_B1",d:.53},{n:"Dance_B2",d:.57},{n:"Dance_B3",d:.53},{n:"Dance_B4",d:.57},{n:"Dance_B5",d:.53},{n:"Dance_B6",d:.57},{n:"Dance_B7",d:.53},{n:"Dance_B8",d:.57},{n:"Dance_B9",d:.53},{n:"Dance_B10",d:.57},{n:"Dance_B11",d:.53},{n:"Dance_B12",d:.57},{n:"Dance_B13",d:.53},{n:"Dance_B14",d:.57},{n:"Dance_B15",d:.53},{n:"Dance_B16",d:.57},{n:"Dance_G1",d:.53},{n:"Dance_G2",d:.57},{n:"Dance_G3",d:.53},{n:"Dance_G4",d:.57},{n:"Dance_G5",d:.53},{n:"Dance_G6",d:.57},{n:"Dance_G7",d:.53},{n:"Dance_G8",d:.57},{n:"Dance_G9",d:.53},{n:"Dance_G10",d:.57},{n:"Dance_G11",d:.53},{n:"Dance_G12",d:.57},{n:"Dance_G13",d:.53},{n:"Dance_G14",d:.57},{n:"Dance_G15",d:.53},{n:"Dance_G16",d:.57},{n:"dance_loop",d:1.17}]],["RUSTLER",[{n:"Plane_align_LHS",d:.73},{n:"Plane_close",d:.4},{n:"Plane_getin",d:.8},{n:"Plane_getout",d:1.57},{n:"Plane_open",d:.7}]],["RYDER",[{n:"RYD_Beckon_01",d:1.23},{n:"RYD_Beckon_02",d:1},{n:"RYD_Beckon_03",d:1.07},{n:"RYD_Die_PT1",d:4},{n:"RYD_Die_PT2",d:7.93},{n:"Van_Crate_L",d:.67},{n:"Van_Crate_R",d:.67},{n:"Van_Fall_L",d:.47},{n:"Van_Fall_R",d:.93},{n:"Van_Lean_L",d:.67},{n:"Van_Lean_R",d:.67},{n:"VAN_PickUp_E",d:1.83},{n:"VAN_PickUp_S",d:1.5},{n:"Van_Stand",d:.67},{n:"Van_Stand_Crate",d:.67},{n:"Van_Throw",d:1.37}]],["SAMP",[{n:"FishingIdle",d:1}]],["SCRATCHING",[{n:"scdldlp",d:.67},{n:"scdlulp",d:.67},{n:"scdrdlp",d:.67},{n:"scdrulp",d:.67},{n:"sclng_l",d:1},{n:"sclng_r",d:1},{n:"scmid_l",d:.47},{n:"scmid_r",d:.47},{n:"scshrtl",d:.2},{n:"scshrtr",d:.2},{n:"sc_ltor",d:.67},{n:"sc_rtol",d:.67}]],["SHAMAL",[{n:"SHAMAL_align",d:.2},{n:"SHAMAL_getin_LHS",d:1.4},{n:"SHAMAL_getout_LHS",d:1.37},{n:"SHAMAL_open",d:.6}]],["SHOP",[{n:"ROB_2Idle",d:1.17},{n:"ROB_Loop",d:2.67},{n:"ROB_Loop_Threat",d:2},{n:"ROB_Shifty",d:5.67},{n:"ROB_StickUp_In",d:.53},{n:"SHP_Duck",d:.67},{n:"SHP_Duck_Aim",d:.33},{n:"SHP_Duck_Fire",d:.83},{n:"SHP_Gun_Aim",d:.63},{n:"SHP_Gun_Duck",d:.5},{n:"SHP_Gun_Fire",d:.87},{n:"SHP_Gun_Grab",d:.87},{n:"SHP_Gun_Threat",d:.83},{n:"SHP_HandsUp_Scr",d:.67},{n:"SHP_Jump_Glide",d:.33},{n:"SHP_Jump_Land",d:.7},{n:"SHP_Jump_Launch",d:.57},{n:"SHP_Rob_GiveCash",d:3.83},{n:"SHP_Rob_HandsUp",d:2.67},{n:"SHP_Rob_React",d:2.67},{n:"SHP_Serve_End",d:5.5},{n:"SHP_Serve_Idle",d:5},{n:"SHP_Serve_Loop",d:4.17},{n:"SHP_Serve_Start",d:1.33},{n:"Smoke_RYD",d:6.67}]],["SHOTGUN",[{n:"shotgun_crouchfire",d:1.47},{n:"shotgun_fire",d:1.47},{n:"shotgun_fire_poor",d:1.5}]],["SILENCED",[{n:"CrouchReload",d:1},{n:"SilenceCrouchfire",d:.93},{n:"Silence_fire",d:.87},{n:"Silence_reload",d:.93}]],["SKATE",[{n:"skate_idle",d:1},{n:"skate_run",d:.83},{n:"skate_sprint",d:.67}]],["SMOKING",[{n:"F_smklean_loop",d:4},{n:"M_smklean_loop",d:5},{n:"M_smkstnd_loop",d:5.33},{n:"M_smk_drag",d:3.67},{n:"M_smk_in",d:6.67},{n:"M_smk_loop",d:3.33},{n:"M_smk_out",d:3},{n:"M_smk_tap",d:3}]],["SNIPER",[{n:"WEAPON_sniper",d:1.47}]],["SnM",[{n:"SnM_Caned_Idle_P",d:2},{n:"SnM_Caned_Idle_W",d:2},{n:"SnM_Caned_P",d:1.33},{n:"SnM_Caned_W",d:1.33},{n:"SnM_Cane_Idle_P",d:2},{n:"SnM_Cane_Idle_W",d:2},{n:"SnM_Cane_P",d:1.33},{n:"SnM_Cane_W",d:1.33},{n:"SpankedP",d:1.33},{n:"SpankedW",d:1.33},{n:"Spanked_IdleP",d:1.33},{n:"Spanked_IdleW",d:1.33},{n:"SpankingP",d:1.33},{n:"SpankingW",d:1.33},{n:"Spanking_endP",d:6.67},{n:"Spanking_endW",d:6.67},{n:"Spanking_IdleP",d:1.33},{n:"Spanking_IdleW",d:1.33},{n:"Spanking_SittingIdleP",d:1.33},{n:"Spanking_SittingIdleW",d:1.33},{n:"Spanking_SittingP",d:1},{n:"Spanking_SittingW",d:1}]],["SPRAYCAN",[{n:"spraycan_fire",d:2.33},{n:"spraycan_full",d:4.5}]],["STRIP",[{n:"PLY_CASH",d:1.67},{n:"PUN_CASH",d:3.33},{n:"PUN_HOLLER",d:5},{n:"PUN_LOOP",d:1.93},{n:"strip_A",d:2.07},{n:"strip_B",d:1},{n:"strip_C",d:.97},{n:"strip_D",d:1.9},{n:"strip_E",d:3.33},{n:"strip_F",d:1.03},{n:"strip_G",d:2.27},{n:"STR_A2B",d:4},{n:"STR_B2A",d:.5},{n:"STR_B2C",d:5},{n:"STR_C1",d:6},{n:"STR_C2",d:6},{n:"STR_C2B",d:1},{n:"STR_Loop_A",d:1},{n:"STR_Loop_B",d:2},{n:"STR_Loop_C",d:3}]],["SUNBATHE",[{n:"batherdown",d:3.93},{n:"batherup",d:12.3},{n:"Lay_Bac_in",d:2.33},{n:"Lay_Bac_out",d:3},{n:"ParkSit_M_IdleA",d:3.33},{n:"ParkSit_M_IdleB",d:2.67},{n:"ParkSit_M_IdleC",d:4.33},{n:"ParkSit_M_in",d:2.33},{n:"ParkSit_M_out",d:2},{n:"ParkSit_W_idleA",d:3.33},{n:"ParkSit_W_idleB",d:5},{n:"ParkSit_W_idleC",d:3},{n:"ParkSit_W_in",d:4},{n:"ParkSit_W_out",d:2.67},{n:"SBATHE_F_LieB2Sit",d:1.67},{n:"SBATHE_F_Out",d:2},{n:"SitnWait_in_W",d:4.67},{n:"SitnWait_out_W",d:2.67}]],["SWAT",[{n:"gnstwall_injurd",d:2},{n:"JMP_Wall1m_180",d:1.17},{n:"Rail_fall",d:3},{n:"Rail_fall_crawl",d:5.67},{n:"swt_breach_01",d:5.47},{n:"swt_breach_02",d:5.33},{n:"swt_breach_03",d:4.3},{n:"swt_go",d:1.67},{n:"swt_lkt",d:3},{n:"swt_sty",d:1.17},{n:"swt_vent_01",d:4.73},{n:"swt_vent_02",d:4.43},{n:"swt_vnt_sht_die",d:.67},{n:"swt_vnt_sht_in",d:1.6},{n:"swt_vnt_sht_loop",d:.27},{n:"swt_wllpk_L",d:2.67},{n:"swt_wllpk_L_back",d:.5},{n:"swt_wllpk_R",d:3.67},{n:"swt_wllpk_R_back",d:.43},{n:"swt_wllshoot_in_L",d:1},{n:"swt_wllshoot_in_R",d:1.3},{n:"swt_wllshoot_out_L",d:2},{n:"swt_wllshoot_out_R",d:1.43}]],["SWEET",[{n:"ho_ass_slapped",d:2},{n:"LaFin_Player",d:26.67},{n:"LaFin_Sweet",d:26.67},{n:"plyr_hndshldr_01",d:4},{n:"sweet_ass_slap",d:2},{n:"sweet_hndshldr_01",d:4},{n:"Sweet_injuredloop",d:2}]],["SWIM",[{n:"Swim_Breast",d:1.3},{n:"SWIM_crawl",d:.9},{n:"Swim_Dive_Under",d:1.07},{n:"Swim_Glide",d:1.47},{n:"Swim_jumpout",d:.33},{n:"Swim_Tread",d:1.3},{n:"Swim_Under",d:1.5}]],["SWORD",[{n:"sword_1",d:.87},{n:"sword_2",d:1.07},{n:"sword_3",d:.8},{n:"sword_4",d:1.1},{n:"sword_block",d:.47},{n:"Sword_Hit_1",d:.83},{n:"Sword_Hit_2",d:1.03},{n:"Sword_Hit_3",d:.87},{n:"sword_IDLE",d:1},{n:"sword_part",d:.67}]],["TANK",[{n:"TANK_align_LHS",d:1.43},{n:"TANK_close_LHS",d:.33},{n:"TANK_doorlocked",d:.53},{n:"TANK_getin_LHS",d:.43},{n:"TANK_getout_LHS",d:1.97},{n:"TANK_open_LHS",d:.3}]],["TATTOOS",[{n:"TAT_ArmL_In_O",d:.83},{n:"TAT_ArmL_In_P",d:.83},{n:"TAT_ArmL_In_T",d:.83},{n:"TAT_ArmL_Out_O",d:.93},{n:"TAT_ArmL_Out_P",d:2.5},{n:"TAT_ArmL_Out_T",d:.93},{n:"TAT_ArmL_Pose_O",d:.83},{n:"TAT_ArmL_Pose_P",d:.83},{n:"TAT_ArmL_Pose_T",d:.83},{n:"TAT_ArmR_In_O",d:.83},{n:"TAT_ArmR_In_P",d:.83},{n:"TAT_ArmR_In_T",d:.83},{n:"TAT_ArmR_Out_O",d:1},{n:"TAT_ArmR_Out_P",d:2.5},{n:"TAT_ArmR_Out_T",d:1},{n:"TAT_ArmR_Pose_O",d:.83},{n:"TAT_ArmR_Pose_P",d:.83},{n:"TAT_ArmR_Pose_T",d:.83},{n:"TAT_Back_In_O",d:.83},{n:"TAT_Back_In_P",d:.83},{n:"TAT_Back_In_T",d:.83},{n:"TAT_Back_Out_O",d:.93},{n:"TAT_Back_Out_P",d:2.5},{n:"TAT_Back_Out_T",d:.93},{n:"TAT_Back_Pose_O",d:.83},{n:"TAT_Back_Pose_P",d:.83},{n:"TAT_Back_Pose_T",d:.83},{n:"TAT_Back_Sit_In_P",d:.83},{n:"TAT_Back_Sit_Loop_P",d:2.67},{n:"TAT_Back_Sit_Out_P",d:.83},{n:"TAT_Bel_In_O",d:.83},{n:"TAT_Bel_In_T",d:.83},{n:"TAT_Bel_Out_O",d:.97},{n:"TAT_Bel_Out_T",d:.97},{n:"TAT_Bel_Pose_O",d:.83},{n:"TAT_Bel_Pose_T",d:.83},{n:"TAT_Che_In_O",d:.83},{n:"TAT_Che_In_P",d:.83},{n:"TAT_Che_In_T",d:.83},{n:"TAT_Che_Out_O",d:.93},{n:"TAT_Che_Out_P",d:2.5},{n:"TAT_Che_Out_T",d:.93},{n:"TAT_Che_Pose_O",d:.83},{n:"TAT_Che_Pose_P",d:.83},{n:"TAT_Che_Pose_T",d:.83},{n:"TAT_Drop_O",d:.5},{n:"TAT_Idle_Loop_O",d:2.67},{n:"TAT_Idle_Loop_T",d:2.67},{n:"TAT_Sit_In_O",d:2.33},{n:"TAT_Sit_In_P",d:2.33},{n:"TAT_Sit_In_T",d:2.33},{n:"TAT_Sit_Loop_O",d:2.67},{n:"TAT_Sit_Loop_P",d:2.67},{n:"TAT_Sit_Loop_T",d:2.67},{n:"TAT_Sit_Out_O",d:2.83},{n:"TAT_Sit_Out_P",d:2.17},{n:"TAT_Sit_Out_T",d:2.83}]],["TEC",[{n:"TEC_crouchfire",d:.97},{n:"TEC_crouchreload",d:1.33},{n:"TEC_fire",d:1.1},{n:"TEC_reload",d:1.5}]],["TRAIN",[{n:"tran_gtup",d:3.17},{n:"tran_hng",d:2.33},{n:"tran_ouch",d:1.17},{n:"tran_stmb",d:2.33}]],["TRUCK",[{n:"TRUCK_ALIGN_LHS",d:.57},{n:"TRUCK_ALIGN_RHS",d:.57},{n:"TRUCK_closedoor_LHS",d:.4},{n:"TRUCK_closedoor_RHS",d:.4},{n:"TRUCK_close_LHS",d:.73},{n:"TRUCK_close_RHS",d:.73},{n:"TRUCK_getin_LHS",d:.6},{n:"TRUCK_getin_RHS",d:.6},{n:"TRUCK_getout_LHS",d:.8},{n:"TRUCK_getout_RHS",d:.8},{n:"TRUCK_jackedLHS",d:1.73},{n:"TRUCK_jackedRHS",d:1.5},{n:"TRUCK_open_LHS",d:.53},{n:"TRUCK_open_RHS",d:.53},{n:"TRUCK_pullout_LHS",d:.9},{n:"TRUCK_pullout_RHS",d:.9},{n:"TRUCK_Shuffle",d:.4}]],["UZI",[{n:"UZI_crouchfire",d:.63},{n:"UZI_crouchreload",d:1.37},{n:"UZI_fire",d:.57},{n:"UZI_fire_poor",d:.53},{n:"UZI_reload",d:1.4}]],["VAN",[{n:"VAN_close_back_LHS",d:.33},{n:"VAN_close_back_RHS",d:.33},{n:"VAN_getin_Back_LHS",d:.6},{n:"VAN_getin_Back_RHS",d:.6},{n:"VAN_getout_back_LHS",d:.63},{n:"VAN_getout_back_RHS",d:.63},{n:"VAN_open_back_LHS",d:.97},{n:"VAN_open_back_RHS",d:.97}]],["VENDING",[{n:"VEND_Drink2_P",d:3.33},{n:"VEND_Drink_P",d:1.33},{n:"vend_eat1_P",d:4.33},{n:"VEND_Eat_P",d:1.67},{n:"VEND_Use",d:2.6},{n:"VEND_Use_pt2",d:.4}]],["VORTEX",[{n:"CAR_jumpin_LHS",d:1},{n:"CAR_jumpin_RHS",d:.93},{n:"vortex_getout_LHS",d:1},{n:"vortex_getout_RHS",d:1}]],["WAYFARER",[{n:"WF_Back",d:.1},{n:"WF_drivebyFT",d:.2},{n:"WF_drivebyLHS",d:.2},{n:"WF_drivebyRHS",d:.2},{n:"WF_Fwd",d:.2},{n:"WF_getoffBACK",d:1.73},{n:"WF_getoffLHS",d:.9},{n:"WF_getoffRHS",d:.9},{n:"WF_hit",d:.03},{n:"WF_jumponL",d:.9},{n:"WF_jumponR",d:.9},{n:"WF_kick",d:1.03},{n:"WF_Left",d:.13},{n:"WF_passenger",d:.03},{n:"WF_pushes",d:.97},{n:"WF_Ride",d:.03},{n:"WF_Right",d:.13},{n:"WF_Still",d:.03}]],["WEAPONS",[{n:"SHP_1H_Lift",d:1},{n:"SHP_1H_Lift_End",d:.33},{n:"SHP_1H_Ret",d:.83},{n:"SHP_1H_Ret_S",d:.33},{n:"SHP_2H_Lift",d:.93},{n:"SHP_2H_Lift_End",d:.33},{n:"SHP_2H_Ret",d:.9},{n:"SHP_2H_Ret_S",d:.33},{n:"SHP_Ar_Lift",d:1},{n:"SHP_Ar_Lift_End",d:.33},{n:"SHP_Ar_Ret",d:1.17},{n:"SHP_Ar_Ret_S",d:.33},{n:"SHP_G_Lift_In",d:.67},{n:"SHP_G_Lift_Out",d:.67},{n:"SHP_Tray_In",d:.67},{n:"SHP_Tray_Out",d:.67},{n:"SHP_Tray_Pose",d:2.67}]],["WOP",[{n:"Dance_B1",d:1.13},{n:"Dance_B2",d:1.17},{n:"Dance_B3",d:1.13},{n:"Dance_B4",d:1.17},{n:"Dance_B5",d:1.13},{n:"Dance_B6",d:1.17},{n:"Dance_B7",d:1.13},{n:"Dance_B8",d:1.17},{n:"Dance_B9",d:1.13},{n:"Dance_B10",d:1.17},{n:"Dance_B11",d:1.13},{n:"Dance_B12",d:1.17},{n:"Dance_B13",d:1.13},{n:"Dance_B14",d:1.17},{n:"Dance_B15",d:1.13},{n:"Dance_B16",d:1.17},{n:"Dance_G1",d:1.13},{n:"Dance_G2",d:1.17},{n:"Dance_G3",d:1.13},{n:"Dance_G4",d:1.17},{n:"Dance_G5",d:1.13},{n:"Dance_G6",d:1.17},{n:"Dance_G7",d:1.13},{n:"Dance_G8",d:1.17},{n:"Dance_G9",d:1.13},{n:"Dance_G10",d:1.17},{n:"Dance_G11",d:1.13},{n:"Dance_G12",d:1.17},{n:"Dance_G13",d:1.13},{n:"Dance_G14",d:1.17},{n:"Dance_G15",d:1.13},{n:"Dance_G16",d:1.17},{n:"dance_loop",d:1.17}]],["WUZI",[{n:"CS_Dead_Guy",d:5.07},{n:"CS_Plyr_pt1",d:3.77},{n:"CS_Plyr_pt2",d:9.67},{n:"CS_Wuzi_pt1",d:3.77},{n:"CS_Wuzi_pt2",d:9.67},{n:"Walkstart_Idle_01",d:3.17},{n:"Wuzi_follow",d:3},{n:"Wuzi_Greet_Plyr",d:4},{n:"Wuzi_Greet_Wuzi",d:4},{n:"Wuzi_grnd_chk",d:4},{n:"Wuzi_stand_loop",d:2.67},{n:"Wuzi_Walk",d:1.17}]]]),Ze=e=>{const t=$t.get(e.toUpperCase());return t===void 0?!1:t},Xe=(e,t)=>{const a=Ze(e);if(a)return t==="null"?!0:a.some(i=>i.n===t)},rm=(e,t)=>{const a=Ze(e);if(a)return a.find(i=>i.n===t)?.d},te=(e,t)=>{const a=t.replace("-","")==="utf8"?e:I.encodeToBuf(e,t);return[a instanceof Array?"a":"s",a]},Jt=(e,t,a)=>{const i=te(a,e.charset);return samp.callNative("SendClientMessage",`ii${i[0]}`,e.id,E(t),i[1])},sm=(e,t,a)=>(e.forEach(i=>Jt(i,t,a)),1),Qt=(e,t,a)=>{const i=te(a,e.charset);return samp.callNative("SendPlayerMessageToPlayer",`ii${i[0]}`,e.id,t,i[1])},lm=(e,t,a)=>(e.forEach(i=>{Qt(i,t,a)}),1),om=(e,t,a)=>{const{charset:i}=e,{style:n,caption:r,info:s,button1:l,button2:o}=a,[d,c]=te(r||"",i),[,u]=te(s||"",i),[,p]=te(l||"",i),[,g]=te(o||"",i);return!!samp.callNative("ShowPlayerDialog",`iii${d.repeat(4)}`,e.id,t,n,c,u,p,g)},dm=e=>{const[t,a]=samp.callNative("GetPlayerName","iAi",e.id,V.MAX_PLAYER_NAME);return{name:I.decodeFromBuf(I.getValidStr(t),e.charset),ret:a}},cm=(e,t)=>samp.callNative("SetPlayerName","ia",e.id,I.encodeToBuf(t,e.charset)),_m=(e,t,a)=>{const i=I.encodeToBuf(t,a);return samp.callNative("BanEx","ia",e,i)},hm=(e,t="utf8")=>{const[a,i]=te(e,t);return samp.callNative("SendRconCommand",a,i)},um=(e,t,a,i,n,r,s,l,o,d,c,u,p,g,f,y)=>{const w=I.encodeToBuf(t,e);return samp.callNative("CreateDynamic3DTextLabel","aiffffiiiiiifii",w,a,i,n,r,s,l,o,d,c,u,p,g,f,y)},mm=(e,t,a,i,n,r,s,l,o,d,c,u,p,g,f,y)=>{const w=I.encodeToBuf(e,y);return samp.callNative("CreateDynamic3DTextLabelEx","aiffffiiifaaaaiiiii",w,t,a,i,n,r,s,l,o,d,c,u,p,g,f,c.length,u.length,p.length,g.length)},pm=(e,t,a,i)=>{const n=I.encodeToBuf(a,i);return samp.callNative("UpdateDynamic3DTextLabelText","iia",e,t,n)},fm=(e,t)=>{const[a,i]=samp.callNative("GetDynamic3DTextLabelText","iAi",e,1024);return{text:I.decodeFromBuf(I.getValidStr(a),t),ret:i}},gm=(e,t,a,i,n,r,s,l,o,d,c)=>{const u=I.encodeToBuf(i,e),p=I.encodeToBuf(r,e);return samp.callNative("SetDynamicObjectMaterialText","iiaiaiiiii",t,a,u,n,p,s,l,o,d,c)},Pm=(e,t,a="utf8")=>{const[i,n,r,s,l]=samp.callNative("GetDynamicObjectMaterial","iiIAAIii",e,t,64,64);return{modelId:i,txdName:I.decodeFromBuf(I.getValidStr(n),a),textureName:I.decodeFromBuf(I.getValidStr(r),a),materialColor:s,ret:l}},Sm=(e,t,a)=>{const[i,n,r,s,l,o,d,c,u]=samp.callNative("GetDynamicObjectMaterialText","iiAIAIIIIIii",e,t,2048,32),p=I.decodeFromBuf(i,a),g=I.decodeFromBuf(r,a);return{text:p,materialSize:n,fontFace:g,fontSize:s,bold:l,fontColor:o,backColor:d,textAlignment:c,ret:u}},ym=(e,t,a,i,n,r)=>{const s=I.encodeToBuf(t,r);return!!samp.callNative("SetPlayerChatBubble","iaifi",e,s,E(a),i,n)},ae=Symbol(),U=new Map,K=new Map,Ee=new Map,Ae=new Map,Ce=new Map,Ne=new Map,Te=new Map,De=new Map,Z=new Map,ue=new Map,Q=new Map,q=new Map,ie=new Map,ne=new Map,me=new Map,re=new Map,X=new Uint32Array(65536),Im=(e,t)=>{const a=e.length,i=t.length,n=1<<a-1;let r=-1,s=0,l=a,o=a;for(;o--;)X[e.charCodeAt(o)]|=1<<o;for(o=0;o<i;o++){let d=X[t.charCodeAt(o)];const c=d|s;d|=(d&r)+r^r,s|=~(d|r),r&=d,s&n&&l++,r&n&&l--,s=s<<1|1,r=r<<1|~(c|s),s&=c}for(o=a;o--;)X[e.charCodeAt(o)]=0;return l},Em=(e,t)=>{const a=t.length,i=e.length,n=[],r=[],s=Math.ceil(a/32),l=Math.ceil(i/32);for(let f=0;f<s;f++)r[f]=-1,n[f]=0;let o=0;for(;o<l-1;o++){let f=0,y=-1;const w=o*32,O=Math.min(32,i)+w;for(let T=w;T<O;T++)X[e.charCodeAt(T)]|=1<<T;for(let T=0;T<a;T++){const J=X[t.charCodeAt(T)],W=r[T/32|0]>>>T&1,M=n[T/32|0]>>>T&1,tt=J|f,at=((J|M)&y)+y^y|J|M;let ge=f|~(at|y),Le=y&at;ge>>>31^W&&(r[T/32|0]^=1<<T),Le>>>31^M&&(n[T/32|0]^=1<<T),ge=ge<<1|W,Le=Le<<1|M,y=Le|~(tt|ge),f=ge&tt}for(let T=w;T<O;T++)X[e.charCodeAt(T)]=0}let d=0,c=-1;const u=o*32,p=Math.min(32,i-u)+u;for(let f=u;f<p;f++)X[e.charCodeAt(f)]|=1<<f;let g=i;for(let f=0;f<a;f++){const y=X[t.charCodeAt(f)],w=r[f/32|0]>>>f&1,O=n[f/32|0]>>>f&1,T=y|d,J=((y|O)&c)+c^c|y|O;let W=d|~(J|c),M=c&J;g+=W>>>i-1&1,g-=M>>>i-1&1,W>>>31^w&&(r[f/32|0]^=1<<f),M>>>31^O&&(n[f/32|0]^=1<<f),W=W<<1|w,M=M<<1|O,c=M|~(T|W),d=W&T}for(let f=u;f<p;f++)X[e.charCodeAt(f)]=0;return g},qt=(e,t)=>{if(e.length<t.length){const a=t;t=e,e=a}return t.length===0?e.length:e.length<=32?Im(e,t):Em(e,t)},Am=(e,t)=>{let a=1/0,i=0;for(let n=0;n<t.length;n++){const r=qt(e,t[n]);r<a&&(a=r,i=n)}return t[i]},se=new Map,le=new Map,ea=/[^/\s]+/gi,ve={NOT_EXIST:{code:1,msg:"command does not exist"},REJECTED:{code:2,msg:"An event registered through onCommandText returned false"},PERFORMED:{code:3,msg:"An event registered through onCommandPerformed returned false"},RECEIVED_THROW:{code:4,msg:"An event registered through onCommandReceived throw an error"},RECEIVED_REJECTED:{code:5,msg:"An event registered through onCommandReceived returned false"}},[Cm,Nm]=h({name:"OnCommandReceived",isNative:!1,throwOnError:!0,beforeEach(e,t,a,i,n,r,s,l,o){return{player:e,command:t,cmdText:a,buffer:i,strictMainCmd:n,noStrictMainCmd:r,hasStrict:s,hasNoStrict:l,subcommand:o}}}),[Tm,Dm]=h({name:"OnCommandPerformed",isNative:!1,beforeEach(e,t,a,i,n,r,s,l,o){return{player:e,command:t,cmdText:a,buffer:i,strictMainCmd:n,noStrictMainCmd:r,hasStrict:s,hasNoStrict:l,subcommand:o}}}),[vm,we]=h({name:"OnCommandError",isNative:!1,defaultValue:!1,beforeEach(e,t,a,i,n,r,s,l,o,d){return{player:e,error:t,command:a,cmdText:i,buffer:n,strictMainCmd:r,noStrictMainCmd:s,hasStrict:l,hasNoStrict:o,subcommand:d,getSuggestion(){const c=Am(i,[...se.keys(),...le.keys()]),u=qt(i,c);return{suggestion:c,distance:u}}}}}),[wm,Rm]=h({name:"OnPlayerCommandTextI18n",identifier:"iai",defaultValue:!1,beforeEach(e,t){const a=U.get(e);let i=t,n="";return typeof t=="string"?(n=t,i=I.encodeToBuf(n,"utf-8")):n=I.decodeFromBuf(t,a.charset),{player:a,buffer:i,cmdText:n}}}),[Lm,bm]=h({name:"OnPlayerCommandTextRaw",isNative:!1,defaultValue:!1,beforeEach(e,t,a){return{player:e,buffer:t,cmdText:a}}});function Om(e){const t=[];let a="";for(let i=0;i<e.length;i++)a+=e[i]+" ",t.push(a.trimEnd());return t.reverse()}wm(({player:e,buffer:t,cmdText:a,next:i})=>{const n=bm(e,t,a);if(n)return n;const r=a.match(ea),s=Om(r),l=s.find(y=>se.has(y)),o=s.map(y=>y.toLowerCase()).find(y=>le.has(y)),d=!!l,c=!!o,u=r.join(" ");let p=[];const g=[[l,se,!0],[o,le,!1]],f=[u,a,t,l,o,d,c,p];if(d||c){const y=g[0][0]||g[1][0];p=u.replace(y,"").trim().split(" ")}else return we(e,ve.NOT_EXIST,...f);try{if(!Nm(e,...f))return we(e,ve.RECEIVED_REJECTED,...f)}catch(y){const w=typeof y=="object"?y:{error:y};return we(e,{...ve.RECEIVED_THROW,...w},...f)}for(const[y,w,O]of g){if(!y)continue;const T=w.get(y),[,J]=T;if(!J(e,y,p,a,t,O))return we(e,ve.REJECTED,...f)}return Dm(e,u,a,t,l,o,d,c,p)?(i(),!0):we(e,ve.PERFORMED,...f)});function Gm(e,t,a,i,n,r){return{player:e,mainCommand:t,subcommand:a,cmdText:i,buffer:n,isStrict:r}}class x{static caseSensitive=!1;constructor(){}static on(t,a){let i=x.caseSensitive,n,r;typeof t=="string"||t instanceof Array?(n=t,r=a):(n=t.command,r=t.run,typeof t.caseSensitive<"u"&&(i=t.caseSensitive));const s=Array.isArray(n)?n:[n],l=s.find(c=>!c.match(ea));if(l)return console.log(`error command ${l} format`),()=>{};const o=i?se:le,d=s.map(c=>{const u=c.replaceAll("/",""),p=i?u:u.toLowerCase();if(!o.has(p)){const f=h({name:i?"$"+p:p,isNative:!1,beforeEach:Gm});o.set(p,f)}const[g]=o.get(p);return[p,g(r)]});return()=>{d.forEach(c=>{const[u,p]=c;p()===0&&o.delete(u)})}}static off(t){(Array.isArray(t)?t:[t]).forEach(a=>{let i=a.replaceAll("/","");se.has(i)&&(F.has(i)&&F.delete(i),se.has(i)&&se.delete(i)),i=i.toLowerCase(),le.has(i)&&(F.has(i)&&F.delete(i),le.has(i)&&le.delete(i))})}static enableCaseSensitive(){x.caseSensitive=!0}static disableCaseSensitive(){x.caseSensitive=!1}static isCaseSensitive(){return x.caseSensitive}static simulate(t,a){return Rm(t.id,a)}}const[ta]=h({name:"OnClientCheckResponse",beforeEach(e,t,a,i){return{player:m.getInstance(e),actionId:t,memAddr:a,data:i}}}),[Fm,Bm]=h({name:"OnPlayerLocaleChange",isNative:!1,beforeEach(e,t,a){return{player:e,newLocale:t,oldLocale:a}}}),[xm,km]=h({name:"OnPlayerCharsetChange",isNative:!1,beforeEach(e,t,a){return{player:e,newCharset:t,oldCharset:a}}});class m{constructor(t){this.id=t;const a=m.getInstance(t);if(a)return a;U.set(t,this)}[ae]={isAndroid:!0};static MAX_CHECK_ANDROID_DELAY=10;static SKIP_CHECK_ANDROID=!1;_charset="ISO-8859-1";_locale="en_US";lastDrunkLevel=0;lastFps=0;lastUpdateTick=0;lastUpdateFpsTick=0;isPaused=!1;isRecording=!1;get charset(){return this._charset}set charset(t){const a=this._charset;this._charset=t,km(this,t,a)}get locale(){return this._locale}set locale(t){const a=this._locale;this._locale=t,Bm(this,t,a)}sendClientMessage(t,a){return Jt(this,t,a)}static sendClientMessageToAll(t,a){sm(m.getInstances(),t,a)}sendMessageToPlayer(t,a){return Qt(t,this.id,a)}sendMessageToAll(t){return lm(m.getInstances(),this.id,t)}isNpc(){return Ln(this.id)}getFps(){return this.lastFps}getDrunkLevel(){return er(this.id)}setDrunkLevel(t){if(t<0||t>5e4)throw new Error("[Player]: player's drunk level ranges from 0 to 50000");return tr(this.id,t)}allowTeleport(t){return An(this.id,t)}isTeleportAllowed(){return Cn(this.id)}enableCameraTarget(t){return ys(this.id,t)}enableStuntBonus(t){return Qr(this.id,t)}getInterior(){return Hn(this.id)}setInterior(t){return Vn(this.id,t)}showNameTag(t,a){return us(this.id,t.id,a)}setColor(t){return ar(this.id,t)}getColor(){return ir(this.id)}setMarker(t,a){_s(this.id,t.id,a)}getMarker(t){return hs(this.id,t.id)}resetMoney(){return _r(this.id)}getMoney(){return hr(this.id)}giveMoney(t){return cr(this.id,t)}resetWeapons(){return lr(this.id)}spawn(){return vi(this.id)}setHealth(t){return Un(this.id,t)}getHealth(){return Wn(this.id)}toggleClock(t){return Sr(this.id,t)}toggleControllable(t){return Ur(this.id,t)}toggleSpectating(t){return is(this.id,t)}spectatePlayer(t,a=Fe.NORMAL){return ns(this.id,t.id,a)}spectateVehicle(t,a=Fe.NORMAL){return rs(this.id,t.id,a)}forceClassSelection(){return Ir(this.id)}kick(){return Hi(this.id)}ban(){return Ui(this.id)}banEx(t,a){return _m(this.id,t,a)}isAdmin(){return Mi(this.id)}isInRangeOfPoint(t,a,i,n){return xn(this.id,t,a,i,n)}isStreamedIn(t){return Mn(this.id,t.id)}setSkin(t,a=!1){return!a&&(t<0||t>311||t===74)||this.getHealth().health<=0||this.isInAnyVehicle()||this.getSpecialAction()===We.DUCK?!1:nr(this.id,t)}getSkin(){return rr(this.id)}isInAnyVehicle(){return os(this.id)}getSpecialAction(){return Xr(this.id)}setSpecialAction(t){return Yr(this.id,t)}setScore(t){return Qn(this.id,t)}getScore(){return qn(this.id)}getPing(){return mr(this.id)||0}setPos(t,a,i){return bn(this.id,t,a,i)}getPos(){return Gn(this.id)}isSpectating(){return this.getState()===ye.SPECTATING}isWasted(){return this.getState()===ye.WASTED}getState(){return ur(this.id)}getVersion(){return qi(this.id)}setVirtualWorld(t){return $r(this.id,t)}getVirtualWorld(){return Jr(this.id)}removeFromVehicle(){return Hr(this.id)}setWantedLevel(t){if(t<0||t>6)throw new Error("[Player]: player's wanted level ranges from 0 to 6");return Er(this.id,t)}getWantedLevel(){return Ar(this.id)}setFacingAngle(t){return Fn(this.id,t)}getFacingAngle(){return Bn(this.id)}setWeather(t){if(t<0||t>255)throw new Error("[Player]: The valid weather value is only 0 to 255");return yr(this.id,t)}getWeather(){return nn(this.id)}setTime(t,a){if(t<0||t>23)throw new Error("[Player]: The valid hour value is only 0 to 23");if(a<0||a>59)throw new Error("[Player]: The valid minute value is only 0 to 59");return gr(this.id,t,a)}getTime(){return Pr(this.id)}removeBuilding(t,a,i,n,r){return Br(this.id,t,a,i,n,r)}setTeam(t){t<0||t>D.NO_TEAM||$n(this.id,t)}getTeam(){return Jn(this.id)}setSkillLevel(t,a){if(a<0||a>999)throw new Error("[Player]: The valid skill level is only 0 to 999");return br(this.id,t,a)}getName(){return dm(this)}setName(t){return cm(this,t)}setVelocity(t,a,i){return Tr(this.id,t,a,i)}getVelocity(){return Dr(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:a,y:i,z:n}=this.getVelocity();return He(a,i,n)*t}getKeys(){return fr(this.id)}getIp(){return Qi(this.id)}getFightingStyle(){return Nr(this.id)}setFightingStyle(t){return Cr(this.id,t)}setArmour(t){return jn(this.id,t)}getArmour(){return Kn(this.id)}setCameraBehind(){return fs(this.id)}setCameraPos(t,a,i){return ms(this.id,t,a,i)}setCameraLookAt(t,a,i,n=Se.CUT){return ps(this.id,t,a,i,n)}getCameraAspectRatio(){return As(this.id)}getCameraFrontVector(){return Ps(this.id)}getCameraMode(){return Ss(this.id)}getCameraPos(){return gs(this.id)}getCameraTargetPlayer(){const t=Es(this.id);return m.getInstances().find(a=>a.id===t)}getCameraTargetVehicle(){const t=Is(this.id);return[...K.values()].find(a=>a.id===t)}getCameraZoom(){return Cs(this.id)}playAudioStream(t,a=0,i=0,n=0,r=5){let s=!1;return(a!==0||i!==0||n!==0)&&(s=!0),wr(this.id,t,a,i,n,r,s)}stopAudioStream(){return Rr(this.id)}playSound(t,a=0,i=0,n=0){return Wr(this.id,t,a,i,n)}static getMaxPlayers(){return za()}playCrimeReport(t,a){if(a<3||a>22)throw new Error("[Player]: Available crime ids range from 3 to 22");return vr(this.id,t.id,a)}interpolateCameraPos(t,a,i,n,r,s,l,o=Se.CUT){return Ns(this.id,t,a,i,n,r,s,l,o)}interpolateCameraLookAt(t,a,i,n,r,s,l,o=Se.CUT){return Ts(this.id,t,a,i,n,r,s,l,o)}createExplosion(t,a,i,n,r){if(n<0||n>13)throw new Error("[Player]: The valid explosion type value is only 0 to 13");return es(this.id,t,a,i,n,r)}static isConnected(t){return ss(t)}isConnected(){return m.isConnected(this.id)}disableRemoteVehicleCollisions(t){return zr(this.id,t)}getVehicle(){if(!this.isInAnyVehicle())return;const t=Mr(this.id);return[...K.values()].find(a=>a.id===t)}getVehicleSeat(){return Vr(this.id)}getSurfingVehicle(){const t=Or(this.id);if(t!==D.VEHICLE_ID)return[...K.values()].find(a=>a.id===t)}applyAnimation(t,a,i=4.1,n=!1,r=!0,s=!0,l=!1,o=0,d=!1){if(!Xe(t,a))throw new Error(`[Player]: Invalid anim library or name ${t} ${a}`);return jr(this.id,t,a,i,n,r,s,l,o,+d)}clearAnimations(t=!1){return Kr(this.id,t)}getAnimationIndex(){return Zr(this.id)}getAnimationName(t=this.getAnimationIndex()){const[a,i]=pi(t);return{index:t,animLib:a,animName:i}}setShopName(t){return Lr(this.id,t)}setPosFindZ(t,a,i){return On(this.id,t,a,i)}setWorldBounds(t,a,i,n){return ds(this.id,t,a,i,n)}clearWorldBounds(){return cs(this.id)}setChatBubble(t,a,i,n,r=this.charset){return ym(this.id,t,a,i,n,r)}getDistanceFromPoint(t,a,i){return kn(this.id,t,a,i)}getCustomSkin(){return qr(this.id)}getTargetPlayer(){const t=zn(this.id);if(t!==D.PLAYER_ID)return m.getInstances().find(a=>a.id===t)}getLastShotVectors(){return xr(this.id)}getWeapon(){return pr(this.id)}getWeaponData(t){return dr(this.id,t)}getWeaponState(){return Yn(this.id)}giveWeapon(t,a){return sr(this.id,t,a)}setAmmo(t,a){return Zn(this.id,t,a)}getAmmo(){return Xn(this.id)}setArmedWeapon(t){return or(this.id,t)}clearDeathMessage(){for(let t=0;t<5;t++)this.sendDeathMessageToPlayer(D.PLAYER_ID,D.PLAYER_ID,je.CONNECT)}sendDeathMessage(t,a){return Ya(t===D.PLAYER_ID?t:t.id,this.id,a)}sendDeathMessageToPlayer(t,a,i){return wn(this.id,t===D.PLAYER_ID?t:t.id,a===D.PLAYER_ID?a:a.id,i)}setSpawnInfo(t,a,i,n,r,s,l,o,d,c,u,p){return t<0||t>D.NO_TEAM||a<0||a>311||a===74||o<0||c<0||p<0?!1:Di(this.id,t,a,i,n,r,s,l,o,d,c,u,p)}redirectDownload(t){return qc(this.id,t)}sendClientCheck(t,a,i,n){const r=[2,5,69,70,71,72];if(!r.includes(t))throw new Error(`[Player]: sendClientCheck valid types are ${r.toString()}`);return new Promise((s,l)=>{if(this.isPaused)return l("[Player]: An attempt to check the player client response, but the player paused the game");const o="[Player]: An attempt to check the player client response timed out",d=this.getPing(),c=(d>=200?0:d)+200;let u=null;const p=ta(({player:g,actionId:f,memAddr:y,data:w,next:O})=>(g!==this||(u&&(clearTimeout(u),u=null),s({actionId:f,memAddr:y,data:w})),O()));u=setTimeout(()=>{p(),l(o)},c),Yi(this.id,t,a,i,n)})}selectTextDraw(t){rc(this.id,t)}cancelSelectTextDraw(){sc(this.id)}beginObjectSelecting(){return Yc(this.id)}endObjectEditing(){return zc(this.id)}getSurfingObject(){const t=Gr(this.id);if(t!==D.OBJECT_ID)return Z.get(t)}getSurfingPlayerObject(){const t=Fr(this.id);if(t!==D.OBJECT_ID)return Z.get(t)}isAttachedObjectSlotUsed(t){return r_(this.id,t)}editAttachedObject(t){return Xc(this.id,t)}setAttachedObject(t,a,i,n=0,r=0,s=0,l=0,o=0,d=0,c=1,u=1,p=1,g=0,f=0){return this.isAttachedObjectSlotUsed(t)?0:i_(this.id,t,a,i,n,r,s,l,o,d,c,u,p,g,f)}removeAttachedObject(t){return this.isAttachedObjectSlotUsed(t)?n_(this.id,t):0}getAnimationFlags(){return samp.callNative("GetPlayerAnimationFlags","i",this.id)}getLastSyncedTrailerID(){return samp.callNative("GetPlayerLastSyncedTrailerID","i",this.id)}getLastSyncedVehicleID(){return samp.callNative("GetPlayerLastSyncedVehicleID","i",this.id)}toggleWidescreen(t){return en(this.id,t)}isWidescreenToggled(){return tn(this.id)}getSpawnInfo(){return wi(this.id)}getSkillLevel(t){return an(this.id,t)}isCheckpointActive(){return go(this.id)}getCheckpoint(){return Po(this.id)}isRaceCheckpointActive(){return So(this.id)}getRaceCheckpoint(){return yo(this.id)}getWorldBounds(){return rn(this.id)}isInModShop(){return co(this.id)}getSirenState(){return _o(this.id)}getLandingGearState(){return ho(this.id)}getHydraReactorAngle(){return uo(this.id)}getTrainSpeed(){return mo(this.id)}getZAim(){return sn(this.id)}getSurfingOffsets(){return ln(this.id)}getRotationQuat(){return on(this.id)}getDialogID(){return dn(this.id)}getSpectateID(){return cn(this.id)}getSpectateType(){return _n(this.id)}getRawIp(){return Ji(this.id)}setGravity(t){return hn(this.id,t)}getGravity(){return un(this.id)}setAdmin(t){return Vi(this.id,t)}isSpawned(){return mn(this.id)}isControllable(){return pn(this.id)}isCameraTargetEnabled(){return fn(this.id)}toggleGhostMode(t){return gn(this.id,t)}getGhostMode(){return Pn(this.id)}getBuildingsRemoved(){return Sn(this.id)}getAttachedObject(t){return a_(this.id,t)}removeWeapon(t){return yn(this.id,t)}isUsingOfficialClient(){return En(this.id)}allowWeapons(t){return Nn(this.id,t)}areWeaponsAllowed(){return Tn(this.id)}gpci(t=this.charset){return Xi(this.id,t)}isCuffed(){return Ds(this.id)}isInDriveByMode(){return vs(this.id)}isAndroid(){return this.isConnected()&&this[ae].isAndroid}isPC(){return this.isConnected()&&!this[ae].isAndroid}isUsingOmp(){return ws(this.id)}simulateCommand(t){return x.simulate(this,t)}static getInstance(t){return U.get(t)}static getInstances(){return[...U.values()]}}const[aa]=h({name:"OnDialogResponseI18n",identifier:"iiiiai",defaultValue:!1,beforeEach(e,t,a,i,n){const r=m.getInstance(e),s=I.decodeFromBuf(n,r.charset);return{player:r,dialogId:t,response:a,listItem:i,buffer:n,inputText:s}}});aa(({next:e,player:t,dialogId:a,response:i,listItem:n,buffer:r,inputText:s})=>{const l=R.waitingQueue.get(t);return!l||l.showId!==a||l.resolve({response:i,listItem:n,buffer:r,inputText:s}),e()});class R{id=-1;static showingIds=[];static maxDialogId=32767;dialog;static waitingQueue=new WeakMap;constructor(t={style:Ue.MSGBOX,caption:"",info:"",button1:"",button2:""}){this.dialog=t}get style(){return this.dialog.style}set style(t){this.dialog.style=t}get caption(){return this.dialog.caption}set caption(t){this.dialog.caption=t}get info(){return this.dialog.info}set info(t){this.dialog.info=t}get button1(){return this.dialog.button1}set button1(t){this.dialog.button1=t}get button2(){return this.dialog.button2}set button2(t){this.dialog.button2=t}static delDialogTask(t,a=!1){const i=R.waitingQueue.get(t);if(!i)return!1;a&&i.reject("[Dialog]: player timeout does not respond or second request show dialog"),R.waitingQueue.delete(t);const n=R.showingIds.indexOf(i.showId);return n>-1&&R.showingIds.splice(n,1),!0}show(t){return new Promise((a,i)=>{for(R.close(t);(this.id===-1||R.showingIds.includes(this.id))&&R.showingIds.length!==R.maxDialogId;)this.id=Math.floor(Math.random()*(R.maxDialogId+1));if(this.id===-1){i("[Dialog]: The maximum number of dialogs is reached");return}R.showingIds.push(this.id),R.waitingQueue.set(t,{resolve:a,reject:i,showId:this.id}),R.__inject__ShowPlayerDialog(t,this.id,this.dialog)}).catch(a=>Promise.reject(a)).finally(()=>R.delDialogTask(t))}static close(t){R.delDialogTask(t,!0),In(t.id)}static __inject__ShowPlayerDialog=om}const[ia]=h({name:"OnPlayerConnect",beforeEach(e){const t=new m(e);return U.set(e,t),R.close(t),{player:t}}}),[na]=h({name:"OnPlayerDisconnect",beforeEach(e,t){return{player:U.get(e),reason:t}},afterEach({player:e}){U.delete(e.id)}}),[ra]=h({name:"OnPlayerUpdate",beforeEach(e){return{player:m.getInstance(e)}}}),[Mm]=h({name:"OnPlayerTextI18n",identifier:"iai",beforeEach(e,t){const a=m.getInstance(e);return{player:a,text:I.decodeFromBuf(t,a.charset),buffer:t}}}),[Vm]=h({name:"OnPlayerEnterExitModShop",beforeEach(e,t,a){return{player:m.getInstance(e),enterExit:t,interior:a}}}),[Hm]=h({name:"OnPlayerClickMap",defaultValue:!1,beforeEach(e,t,a,i){return{player:m.getInstance(e),fX:t,fY:a,fZ:i}}}),[Um]=h({name:"OnPlayerClickPlayer",defaultValue:!1,beforeEach(e,t,a){return{player:m.getInstance(e),clickedPlayer:m.getInstance(t),source:a}}}),[Wm]=h({name:"OnPlayerDeath",beforeEach(e,t,a){return{player:m.getInstance(e),killer:m.getInstance(t)||D.PLAYER_ID,reason:a}}}),[jm]=h({name:"OnPlayerGiveDamage",defaultValue:!1,beforeEach(e,t,a,i,n){return{player:m.getInstance(e),damage:m.getInstance(t),amount:a,weapon:i,bodyPart:n}}}),[Km]=h({name:"OnPlayerKeyStateChange",beforeEach(e,t,a){return{player:m.getInstance(e),newKeys:t,oldKeys:a}}}),[Zm]=h({name:"OnPlayerRequestClass",beforeEach(e,t){return{player:m.getInstance(e),classId:t}}}),[Xm]=h({name:"OnPlayerRequestSpawn",beforeEach(e){return{player:m.getInstance(e)}}}),[Ym]=h({name:"OnPlayerSpawn",beforeEach(e){return{player:m.getInstance(e)}}}),[zm]=h({name:"OnPlayerStateChange",beforeEach(e,t,a){return{player:m.getInstance(e),newState:t,oldState:a}}}),[$m]=h({name:"OnPlayerSteamIn",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[Jm]=h({name:"OnPlayerSteamOut",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[Qm]=h({name:"OnPlayerTakeDamage",defaultValue:!1,beforeEach(e,t,a,i,n){return{player:m.getInstance(e),damage:m.getInstance(t)||D.PLAYER_ID,amount:a,weapon:i,bodyPart:n}}}),[qm]=h({name:"OnPlayerInteriorChange",beforeEach(e,t,a){return{player:m.getInstance(e),newInteriorId:t,oldInteriorId:a}}}),[ep]=h({name:"OnPlayerRequestDownload",beforeEach(e,t,a){return{player:m.getInstance(e),type:t,crc:a}}}),[tp]=h({name:"OnPlayerFinishedDownloading",beforeEach(e,t){return{player:m.getInstance(e),virtualWorld:t}}}),[ap]=h({name:"OnPlayerWeaponShot",beforeEach(e,t,a,i,n,r,s){return{player:m.getInstance(e),weapon:t,hitType:a,hitId:i,fX:n,fY:r,fZ:s}}});let Re=null;const Y=new Map,Ye=new Map;function sa(e){if(!e.isConnected()){Y.has(e)&&clearInterval(Y.get(e));return}let t=Ye.get(e)||1;if(t>=m.MAX_CHECK_ANDROID_DELAY){clearInterval(Y.get(e)),ze(e,!0);return}e.sendClientCheck(72,0,0,2).then(({actionId:a})=>{a===72&&(e[ae].isAndroid=!1,Y.has(e)&&clearInterval(Y.get(e)),ze(e,!1))}).catch(()=>{}),t++,Ye.set(e,t)}const[ip,np]=h({name:"OnPlayerPause",isNative:!1,beforeEach(e,t){return{player:e,pausedAt:t}}}),[rp,sp]=h({name:"OnPlayerResume",isNative:!1,beforeEach(e,t,a,i){return{player:e,pausedAt:t,now:a,diff:i}}}),[lp,op]=h({name:"OnPlayerFpsUpdate",isNative:!1,beforeEach(e,t,a){return{player:e,newFps:t,oldFps:a}}}),[dp,ze]=h({name:"OnAndroidCheck",isNative:!1,beforeEach(e,t){return{player:e,result:t}}});ia(({player:e,next:t})=>{if(!Re&&m.getInstances().length&&(Re=setInterval(()=>{m.getInstances().filter(i=>{const n=i.getState()!==ye.NONE;return!i.isPaused&&!i.isNpc()&&n}).forEach(i=>{Date.now()-i.lastUpdateTick>1e3&&(i.isPaused=!0,np(i,i.lastUpdateTick))})},500)),e.isNpc())return e[ae].isAndroid=!1,t();if(m.SKIP_CHECK_ANDROID)return e[ae].isAndroid=!e.isUsingOfficialClient(),ze(e,e[ae].isAndroid),t();sa(e);const a=setInterval(()=>sa(e),1e3);return Y.set(e,a),t()}),na(({player:e,next:t})=>(Re&&m.getInstances().length<=1&&(clearInterval(Re),Re=null),Y.has(e)&&(clearInterval(Y.get(e)),Y.delete(e),Ye.delete(e)),t()));function cp(e){if(!m.isConnected(e.id))return;const t=Date.now();if(t-e.lastUpdateFpsTick>=1e3){const a=e.getDrunkLevel();if(a<100){e.setDrunkLevel(2e3),e.lastDrunkLevel=2e3,e.lastFps=0;return}e.lastUpdateFpsTick=t;const i=e.lastFps,n=e.lastDrunkLevel-a-1;e.lastFps=n,e.lastDrunkLevel=a,op(e,n,i)}}ra(({player:e,next:t})=>{if(!e.isNpc()){const a=Date.now();e.isPaused&&(e.isPaused=!1,sp(e,e.lastUpdateTick,a,a-e.lastUpdateTick)),e.lastUpdateTick=a,cp(e)}return t()});const $e=Object.freeze({onConnect:ia,onDisconnect:na,onPause:ip,onResume:rp,onUpdate:ra,onText:Mm,onEnterExitModShop:Vm,onClickMap:Hm,onClickPlayer:Um,onDeath:Wm,onGiveDamage:jm,onKeyStateChange:Km,onRequestClass:Zm,onRequestSpawn:Xm,onSpawn:Ym,onStateChange:zm,onStreamIn:$m,onStreamOut:Jm,onTakeDamage:Qm,onInteriorChange:qm,onRequestDownload:ep,onFinishedDownloading:tp,onCheckResponse:ta,onCommandReceived:Cm,onCommandPerformed:Tm,onCommandError:vm,onCommandText:x.on,offCommandText:x.off,onDialogResponse:aa,onLocaleChange:Fm,onCharsetChange:xm,onFpsUpdate:lp,onWeaponShot:ap,onAndroidCheck:dp,onCommandTextRaw:Lm}),_p=[8,9,10,25,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,96,97,98],hp=[[13,18,19,20,21,24],[1,3,4,5,6,7,13,17,19,20,142,143,144,145],[],[],[0,2,7,13,16,17,19,20,21],[0,1,14,18,19,20,21,23],[],[],[],[],[1,3,7,13,17,19,20,21,23,24],[],[],[],[],[1,3,7,17,18,19,23],[],[],[2,6,16,20,21],[],[1,3,4,5,19,21],[0,14,16,18,19,20,21,23],[7,13,17,19,20,21],[],[],[],[1,3,4,5,6,19,21],[],[],[],null,[],[],[],[],[],[1,3,6,7,13,17,19,20,21,22],[],[],[1,3,7,13,17,23,142,143,144,145],[],[],[],[],[],[],null,[],null,null,[],[],null,null,null,[],[],[],[],[],[],null,null,null,[],[],[],[],null,[],[],[],null,null,[],[],[],[6,7,17,18,19,20,21],[4,5,12,13,20,21,22,24],[],[],null,[],[],null,[],[],[],[],[0,2,4,5,6,13,16,18,19,20,24],[],[3,7,14,17,18,19,20,21,23,142,143,144,145],[0,4,5,6,16],null,[],[],[1,2,3,6,7,11,17,19,20,23,142,143],[],[],[],[13,19,20,21,24],[],[],[],[],[],[],[],[],null,null,[],[],[],[],[],[0,2,4,7,15,16,17,18,19,20,21],[2,3,7,16,17,18,19,20,23,142,143,144,145],[1,3,5,6,7,13,17,18,20,23,142,143,144,145],[],[],null,null,null,[],[],[],[1,7,14,15,17,18,20,21],[],[1,3,6,7,11,12,17,18,19,20,23],[],[],[],[],[100,101,106,122,123,124,125,126,127,178,179,180,185],[109,110,113,114,115,116,117,118,119,120,121],[103,104,105,107,108,128,181,182,183,184],null,null,[],[1,4,6,7,17,18,19,20,23,24,142,143,144,145],[],[14,15,18,19,20,21,144,145],[],[],[],[1,2,4,6,7,17,18,19,23,24,142,143,144,145],[0,3,16,18,19,20,21,142,143],[],[1,3,7,11,12,17,18,19,20,23,142,143,144,145],[1,3,4,5,6,18,19,20,23,142,143,144,145],[2,3,5,6,16,18,19,20,21,23],[],[],[],[],[],[],[88,89,90,91,92,93,94,95,163,164,165,166,167,168],[65,66,67,68,69,70,71,72,158,159,160,161,162,173],[26,27,28,29,30,31,32,33,138,139,140,141,169,170],[55,56,57,58,59,60,61,62,63,64,154,155,156,157],[34,35,36,37,38,39,40,41,146,147,148,149,171,172],[],[],[45,46,47,48,49,50,51,52,53,54,150,151,152,153],[],[102,129,130,131,132,133,186,187,188,189],[],null,null,[],[],[],[],[42,43,44,99,174,175,176,177],[134,135,136,137,190,191,192,193],[],[],[],[1,6,7,17,18,20,23],null,[],[],[],[0,1,2,3,6,7,13,14,15,16,17,18,19,20,21,22,23,24,142,143,144,145],null,[],[],[0,4,5,6,7,13,16,17,18,20,24,144,145],null,[],[],[],[],null,[],[],[],[],[4,5,6,7,13,17,18,20,22],[],[],[1,6,7,17,18,19,20,23,24,142,143,144,145],[],[],[],[],[],[],[],[]],up=(e,t)=>{if(!Je(e))return!1;const a=hp[e-400];if(a===null)return!1;const i=t-1e3;return _p.includes(i)||a.includes(i)},Je=e=>e>=400&&e<=611,mp=(e,t)=>{if(t<0||t>2)return!1;const a=new Map([[483,0],[534,2],[535,2],[536,2],[558,2],[559,2],[560,2],[561,2],[562,2],[565,2],[567,2],[575,1],[576,2]]).get(e);return a===void 0?!1:t<=a},[la]=h({name:"OnGameModeInit"}),[oa]=h({name:"OnGameModeExit"}),[pp]=h({name:"OnIncomingConnection",defaultValue:!1,beforeEach(e,t,a){return{playerId:e,ipAddress:t,port:a}}}),[fp]=h({name:"OnRconCommandI18n",identifier:"ai",defaultValue:!1,beforeEach(e){return{buffer:e,cmd:I.decodeFromBuf(e)}}}),[gp]=h({name:"OnRconLoginAttemptI18n",identifier:"aiaii",beforeEach(e,t,a){return{ip:I.decodeFromBuf(e),password:I.decodeFromBuf(t),success:!!a,ipBuffer:e,passwordBuffer:t}}}),oe=[],pe=[],Qe=new Map,qe=async e=>{try{return await new Promise((t,a)=>{const i=oe.findIndex(l=>l.name===e);if(i===-1)return;const n=oe[i];function r(l){l.length&&Qe.set(e,l),oe.splice(i,1),pe.push(n),setTimeout(t)}const s=n.load();s instanceof Promise?s.then(r).catch(a):r(s)})}catch(t){throw new Error(`[GameMode]: script ${e} load fail
3
- err:${t}`)}},et=async e=>{try{return await new Promise((t,a)=>{const i=pe.findIndex(o=>o.name===e);if(i===-1)return;const n=pe[i],r=Qe.get(e);r&&(r.forEach(o=>o()),Qe.delete(e));function s(){pe.splice(i,1),oe.push(n),setTimeout(t)}const l=n.unload();l instanceof Promise?l.then(s).catch(a):s()})}catch(t){throw new Error(`[GameMode]: script ${e} unload fail
4
- ${t}`)}},Pp=async e=>{await et(e),await qe(e)};la(async({next:e})=>{const t=oe.map(a=>a.name);for(const a of t)await qe(a);return e()}),oa(async({next:e})=>{const t=pe.map(a=>a.name);for(const a of t)await et(a);return e()});const Sp=function(e,...t){if(oe.some(a=>a.name===e.name)||pe.some(a=>a.name===e.name))throw new Error(`[GameMode]: script ${e.name} has already been applied`);e.load=e.load.bind(e,...t),oe.push(e)};class L{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static onInit=la;static onExit=oa;static onIncomingConnection=pp;static onRconCommand=fp;static onRconLoginAttempt=gp;static use(t,...a){return Sp(t,...a),this}static loadUseScript=qe;static reloadUseScript=Pp;static unloadUseScript=et;static enableCmdCaseSensitive=x.enableCaseSensitive;static disableCmdCaseSensitive=x.disableCaseSensitive;static isCmdCaseSensitive=x.isCaseSensitive;static supportAllNickname(){for(let t=0;t<=255;t++)this.isNickNameCharacterAllowed(t)||this.allowNickNameCharacter(t,!0)}static setWeather(t){if(t<0||t>255)throw new Error("[GameMode]: The valid weather value is only 0 to 255");return ai(t)}static setWorldTime(t){if(t<0||t>23)throw new Error("[GameMode]: The valid hour value is only 0 to 23");return qa(t)}static getWorldTime=ei;static setTeamCount=Ci;static sendRconCommand=hm;static addPlayerClass=Ni;static addPlayerClassEx=Ti;static createExplosion(t,a,i,n,r){if(n<0||n>13)throw new Error("[GameMode]: The valid explosion type value is only 0 to 13");return ri(t,a,i,n,r)}static manualVehicleEngineAndLights=Cl;static blockIpAddress=Ki;static unBlockIpAddress=Zi;static getServerTickRate=mi;static addSimpleModel(t,a,i,n,r){return this.checkSimpleModel(t,a,i,n,r)?Jc(t,a,i,n,r):0}static addSimpleModelTimed(t,a,i,n,r,s,l){return this.checkSimpleModel(t,a,i,n,r,s,l)?Qc(t,a,i,n,r,s,l):0}static checkSimpleModel(t,a,i,n,r,s,l){if(t<-1)throw new Error("[GameMode]: AddSimpleModel - Error virtual world");if(a<0)throw new Error("[GameMode]: AddSimpleModel - Error baseId");if(i>-1e3||i<-3e4)throw new Error("[GameMode]: AddSimpleModel - Error newId range");if(n.trim().length<0)throw new Error("[GameMode]: AddSimpleModel - Empty dffName");if(r.trim().length<0)throw new Error("[GameMode]: AddSimpleModel - Empty txdName");if(s!==void 0&&(s<0||s>23))throw new Error("[GameMode]: AddSimpleModel - Error time on range");if(l!==void 0&&(l<0||l>23))throw new Error("[GameMode]: AddSimpleModel - Error time off range");return 1}static isValidCustomModel=ot;static getCustomModePath=s_;static getConsoleVarAsString(t,a="utf8"){const{consoleVarBuf:i,ret:n}=ka(t);return{consoleVar:I.decodeFromBuf(I.getValidStr(i),a),ret:n}}static getRestartTime=Ka;static setRestartTime=ja;static allowAdminTeleport=ba;static isAdminTeleportAllowed=Oa;static allowInteriorWeapons=Ga;static areInteriorWeaponsAllowed=Fa;static areAllAnimationsEnabled=Ba;static enableAllAnimations=xa;static enableStuntBonusForAll=fi;static enableVehicleFriendlyFire=ti;static enableZoneNames=si;static disableInteriorEnterExits=oi;static setGameModeText=$a;static getGravity=ii;static setGravity=ni;static showNameTags=Ja;static disableNameTagLOS=ci;static usePlayerPedAnims=li;static showPlayerMarkers=Qa;static limitPlayerMarkerRadius=hi;static limitGlobalChatRadius=_i;static setNameTagDrawDistance=di;static findModelFileNameFromCRC=e_;static findTextureFileNameFromCRC=t_;static getWeaponName=yi;static setObjectsDefaultCameraCollision=$c;static vectorSize=He;static clearBanList=zi;static isBanned=$i;static isValidNickName=Na;static allowNickNameCharacter=Ta;static isNickNameCharacterAllowed=Da;static addServerRule=va;static setServerRule=wa;static isValidServerRule=Ra;static removeServerRule=La;static getWeaponSlot=Si;static getAvailableClasses=Ii;static getPlayerClass=Ei;static editPlayerClass=Ai;static toggleChatTextReplacement=gi;static chatTextReplacementToggled=Pi;static getConsoleVarAsInt=Ma;static getConsoleVarAsBool=Va;static getWeather=Ha;static getServerRuleFlag=Ua;static setServerRuleFlags=Wa}const A={skip:!1};L.onInit(({next:e})=>(A.skip=!1,e())),L.onExit(({next:e})=>(A.skip=!0,e()));class C{sourceInfo=null;isStatic=!1;static createdCount=0;_id=-1;get id(){return this._id}constructor(t,a=!1){if(typeof t=="number"){const i=C.getInstance(t);if(i)return i;this._id=t,K.set(this._id,this),this.isValid()&&C.createdCount++}else this.sourceInfo=t,this.isStatic=a}create(t=!1){if(this.id!==-1)throw new Error("[Vehicle]: Unable to create again");if(!this.sourceInfo)throw new Error("[Vehicle]: Unable to create with only id");if(C.createdCount===V.MAX_VEHICLES)throw new Error("[Vehicle]: Unable to continue to create vehicle, maximum allowable quantity has been reached");const{modelId:a,x:i,y:n,z:r,zAngle:s,color:l,respawnDelay:o,addSiren:d}=this.sourceInfo;if(!(!t&&!Je(a))){if(this.isStatic){if(o===void 0){this._id=C.__inject_AddStaticVehicle(a,i,n,r,s,l[0],l[1]);return}this._id=C.__inject_AddStaticVehicleEx(a,i,n,r,s,l[0],l[1],o||-1,d||!1)}else this._id=C.__inject_CreateVehicle(a,i,n,r,s,l[0],l[1],o||-1,d||!1);C.createdCount++,K.set(this._id,this)}}destroy(){if(this.id===-1&&!A.skip)throw new Error("[Vehicle]: Unable to destroy the vehicle before create");A.skip||C.__inject_DestroyVehicle(this.id),C.createdCount--,K.delete(this._id),this._id=-1}addComponent(t){if(this.id===-1)return 0;if(!up(this.getModel(),t))throw new Error(`[Vehicle]: Invalid component id ${t} attempted to attach to the vehicle ${this}`);return Gl(this.id,t)}removeComponent(t){if(this.getComponentInSlot(C.getComponentType(t))===0)throw new Error(`[Vehicle]: component id ${t} does not exist on this vehicle`);return Fl(this.id,t)}getComponentInSlot(t){return Zl(this.id,t)}linkToInterior(t){return this.id===-1?0:Ol(this.id,t)}setVirtualWorld(t){return this.id===-1?0:to(this.id,t)}getVirtualWorld(){return this.id===-1?0:ao(this.id)}repair(){return this.id===-1?0:Yl(this.id)}setPos(t,a,i){return this.id===-1?!1:Pl(this.id,t,a,i)}getPos(){return gl(this.id)}getHealth(){return Ml(this.id)}setHealth(t){return this.id===-1?0:kl(this.id,t)}isPlayerIn(t){return this.id===-1?!1:ls(t.id,this.id)}putPlayerIn(t,a){if(this.id===-1||a<0)return 0;if(a>4)throw new Error("[Vehicle]: If the seat is invalid or is taken, will cause a crash when they EXIT the vehicle.");return kr(t.id,this.id,a)}getZAngle(){return Sl(this.id)}setZAngle(t){return this.id===-1?0:El(this.id,t)}setNumberPlate(t){if(this.id===-1)return 0;if(t.length<1||t.length>32)throw new Error("[Vehicle]: The length of the number plate ranges from 32 characters");if(!/^[a-zA-Z0-9]+$/.test(t))throw new Error("[Vehicle]: number plates only allow letters and numbers");return jl(this.id,t)}changeColors(t,a){return this.id===-1?0:Bl(this.id,t,a)}setVelocity(t,a,i){return this.id===-1?!1:$l(this.id,t,a,i)}getVelocity(){return zl(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:a,y:i,z:n}=this.getVelocity();return He(a,i,n)*t}setAngularVelocity(t,a,i){return this.id===-1?!1:Jl(this.id,t,a,i)}getDamageStatus(){return Ql(this.id)}updateDamageStatus(t,a,i,n){return ql(this.id,t,a,i,n)}getDistanceFromPoint(t,a,i){return Il(this.id,t,a,i)}getModel(){return Kl(this.id)}static getModelInfo(t,a){return eo(t,a)}getModelInfo(t){return C.getModelInfo(this.getModel(),t)}getRotationQuat(){return yl(this.id)}setRespawn(){return this.id===-1?0:bl(this.id)}isStreamedIn(t){return this.id===-1?!1:fl(this.id,t.id)}setParamsCarDoors(t,a,i,n){return this.id===-1?0:vl(this.id,t,a,i,n)}setParamsCarWindows(t,a,i,n){return this.id===-1?0:Rl(this.id,t,a,i,n)}getParamsCarDoors(){return wl(this.id)}getParamsCarWindows(){return Ll(this.id)}setParamsEx(t,a,i,n,r,s,l){return this.id===-1?0:Nl(this.id,t,a,i,n,r,s,l)}getParamsEx(){if(this.id===-1)return{engine:-1,lights:-1,alarm:-1,doors:-1,bonnet:-1,boot:-1,objective:-1};const[t,a,i,n,r,s,l]=Tl(this.id);return{engine:t,lights:a,alarm:i,doors:n,bonnet:r,boot:s,objective:l}}toggleEngine(t){if(this.id===-1)return 0;const{lights:a,alarm:i,doors:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(t,a,i,n,r,s,l)}toggleLights(t){if(this.id===-1)return 0;const{engine:a,alarm:i,doors:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(a,t,i,n,r,s,l)}toggleAlarm(t){if(this.id===-1)return 0;const{engine:a,lights:i,doors:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(a,i,t,n,r,s,l)}toggleDoors(t){if(this.id===-1)return 0;const{engine:a,lights:i,alarm:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(a,i,n,t,r,s,l)}toggleBonnet(t){if(this.id===-1)return 0;const{engine:a,lights:i,alarm:n,doors:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(a,i,n,r,t,s,l)}toggleBoot(t){if(this.id===-1)return 0;const{engine:a,lights:i,alarm:n,doors:r,bonnet:s,objective:l}=this.getParamsEx();return this.setParamsEx(a,i,n,r,s,t,l)}toggleObjective(t){if(this.id===-1)return 0;const{engine:a,lights:i,alarm:n,doors:r,bonnet:s,boot:l}=this.getParamsEx();return this.setParamsEx(a,i,n,r,s,l,t)}getParamsSirenState(){return this.id===-1?-2:Dl(this.id)}setParamsForPlayer(t,a,i){return this.id===-1?0:Al(this.id,t.id,a,i)}isTrailerAttached(){return this.id===-1?!1:Ul(this.id)}changePaintjob(t){return this.id===-1||!mp(this.getModel(),t)?0:(this.changeColors("#fff","#fff"),xl(this.id,t),1)}attachTrailer(t){return this.id===-1?0:Vl(t.id,this.id)}detachTrailer(){this.isTrailerAttached()&&Hl(this.id)}getTrailer(){return C.getInstance(Wl(this.id))}isValid(){return A.skip&&this.id!==-1?!0:C.isValid(this.id)}getMatrix(){return hl(this.id)}getTrainSpeed(){return this.id===-1?0:_l(this.id)}getHydraReactorAngle(){return this.id===-1?0:cl(this.id)}getLandingGearState(){return this.id===-1?0:dl(this.id)}getSirenState(){return this.id===-1?0:ol(this.id)}getDriver(){return U.get(sl(this.id))}getLastDriver(){return U.get(rl(this.id))}isSirenEnabled(){return il(this.id)}toggleSirenEnabled(t){return this.id===-1?0:tl(this.id,t)}setParamsSirenState(t){return this.id===-1?0:al(this.id,t)}isDead(){return this.id===-1?!0:Qs(this.id)}setDead(t){return this.id===-1?!1:qs(this.id,t)}setBeenOccupied(t){return this.id===-1?!1:el(this.id,t)}getRespawnTick(){return this.id===-1?0:$s(this.id)}setRespawnTick(t){return this.id===-1?!1:Js(this.id,t)}isOccupied(){return this.id===-1?!1:zs(this.id)}hasBeenOccupied(){return this.id===-1?!1:Ys(this.id)}getOccupiedTick(){return this.id===-1?0:Zs(this.id)}setOccupiedTick(t){return this.id===-1?0:Xs(this.id,t)}getCab(){return this.id===-1?0:Ks(this.id)}getRespawnDelay(){return this.id===-1?0:js(this.id)}setRespawnDelay(t){return this.id===-1?0:Ws(this.id,t)}getNumberPlate(){return Us(this.id)}getInterior(){return this.id===-1?0:Hs(this.id)}getPaintjob(){return this.id===-1?-1:Vs(this.id)}getColors(){return Ms(this.id)}setSpawnInfo(t,a,i,n,r,s,l,o=-2,d=-2,c=!1){return this.id===-1||!c&&!Je(t)?0:ks(this.id,t,a,i,n,r,E(s),E(l),o,d)}getSpawnInfo(){return xs(this.id)}getRandomColorPair(){return st(this.getModel())}show(){return this.id===-1?!1:so(this.id)}hide(){return this.id===-1?!1:lo(this.id)}isHidden(){return this.id===-1?!1:oo(this.id)}getVehicleOccupant(t){return po(this.id,t)}getVehicleMaxPassengers(){return lt(this.getModel())}countVehicleOccupants(){return fo(this.getModel())}static getVehicleMaxPassengers=lt;static getRandomColorPair=st;static getComponentType=Xl;static colorIndexToColor=ul;static isValid=io;static getModelsUsed=ll;static getModelCount=nl;static getInstance(t){return K.get(t)}static getInstances(){return[...K.values()]}static __inject_AddStaticVehicle=no;static __inject_AddStaticVehicleEx=ro;static __inject_CreateVehicle=ml;static __inject_DestroyVehicle=pl}L.onExit(({next:e})=>(C.getInstances().forEach(t=>t.destroy()),K.clear(),e()));const[yp]=h({name:"OnVehicleDamageStatusUpdate",defaultValue:!1,beforeEach(e,t){return{vehicle:C.getInstance(e),player:m.getInstance(t)}}}),[Ip]=h({name:"OnVehicleDeath",beforeEach(e,t){return{vehicle:C.getInstance(e),killer:m.getInstance(t)}}}),[Ep]=h({name:"OnVehicleMod",beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),componentId:a}}}),[Ap]=h({name:"OnVehiclePaintjob",beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),paintjobId:a}}}),[Cp]=h({name:"OnVehicleRespray",beforeEach(e,t,a,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),color:[a,i]}}}),[Np]=h({name:"OnVehicleSirenStateChange",defaultValue:!1,beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),state:!!a}}}),[Tp]=h({name:"OnVehicleSpawn",beforeEach(e){return{vehicle:C.getInstance(e)}}}),[Dp]=h({name:"OnVehicleStreamIn",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[vp]=h({name:"OnVehicleStreamOut",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[wp]=h({name:"OnPlayerEnterVehicle",beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),isPassenger:!!a}}}),[Rp]=h({name:"OnPlayerExitVehicle",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[Lp]=h({name:"OnNpcEnterVehicle",beforeEach(e,t){return{vehicle:C.getInstance(e),seatId:t}}}),[bp]=h({name:"OnNpcExitVehicle"}),[Op]=h({name:"OnTrailerUpdate",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[Gp]=h({name:"OnUnoccupiedVehicleUpdate",beforeEach(e,t,a,i,n,r,s,l,o){return{vehicle:C.getInstance(e),player:m.getInstance(t),passengerSeat:a,newX:i,newY:n,newZ:r,velX:s,velY:l,velZ:o}}}),Fp=Object.freeze({onDamageStatusUpdate:yp,onDeath:Ip,onMod:Ep,onPaintjob:Ap,onRespray:Cp,onSirenStateChange:Np,onSpawn:Tp,onStreamIn:Dp,onStreamOut:vp,onPlayerEnter:wp,onPlayerExit:Rp,onNpcEnter:Lp,onNpcExit:bp,onTrailerUpdate:Op,onUnoccupiedUpdate:Gp}),[de]=h({name:"Streamer_OnItemStreamIn",identifier:"iii",beforeEach(e,t,a){return{type:e,id:t,forPlayer:m.getInstance(a)}}}),[ce]=h({name:"Streamer_OnItemStreamOut",identifier:"iii",beforeEach(e,t,a){return{type:e,id:t,forPlayer:m.getInstance(a)}}}),[Bp]=h({name:"Streamer_OnPluginError",identifier:"s",beforeEach(e){return{error:e}}});class P{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getTickRate=Cu;static setTickRate=Nu;static getPlayerTickRate(t){return Tu(t.id)}static setPlayerTickRate(t,a=50){return Du(t.id,a)}static toggleChunkStream=vu;static isToggleChunkStream=wu;static getChunkTickRate(t,a=-1){return a instanceof m?jt(t,a.id):jt(t,a)}static setChunkTickRate(t,a,i=-1){return i instanceof m?Kt(t,a,i.id):Kt(t,a,i)}static getChunkSize=Ru;static setChunkSize=Lu;static getMaxItems=bu;static setMaxItems=Ou;static getVisibleItems(t,a=-1){return a instanceof m?Zt(t,a.id):Zt(t,a)}static setVisibleItems(t,a,i=-1){return i instanceof m?Xt(t,a,i.id):Xt(t,a,i)}static getRadiusMultiplier(t,a=-1){return a instanceof m?Yt(t,a.id):Yt(t,a)}static setRadiusMultiplier(t,a,i=-1){return i instanceof m?zt(t,i.id):zt(t,a,i)}static getTypePriority=Gu;static setTypePriority=Fu;static getCellDistance=Bu;static setCellDistance=xu;static getCellSize=ku;static setCellSize=Mu;static toggleItemStatic=Vu;static isToggleItemStatic=Hu;static toggleItemInvAreas=Uu;static isToggleItemInvAreas=Wu;static toggleItemCallbacks=ju;static isToggleItemCallbacks=Ku;static toggleErrorCallback=Zu;static isToggleErrorCallback=Xu;static amxUnloadDestroyItems=Yu;static processActiveItems=zu;static toggleIdleUpdate(t,a){return $u(t.id,a)}static isToggleIdleUpdate(t){return Ju(t.id)}static toggleCameraUpdate(t,a){return Qu(t.id,a)}static isToggleCameraUpdate(t){return qu(t.id)}static toggleItemUpdate(t,a,i){return em(t.id,a,i)}static isToggleItemUpdate(t,a){return tm(t.id,a)}static getLastUpdateTime(){return am()}static update(t,a=-1){return im(t.id,a)}static updateEx(t,a,i,n,r,s,l,o,d){return nm(t.id,a,i,n,r,s,l,o,d)}static getDistanceToItem=Rh;static toggleItem(t,a,i,n){return Lh(t.id,a,i,n)}static isToggleItem(t,a,i){return bh(t.id,a,i)}static toggleAllItems(t,a,i,n=[-1]){return Oh(t.id,a,i,n)}static getItemInternalID(t,a,i){return Gh(t.id,a,i)}static getItemStreamerID(t,a,i){return Fh(t.id,a,i)}static isItemVisible(t,a,i){return Bh(t.id,a,i)}static destroyAllVisibleItems(t,a,i=1){return xh(t.id,a,i)}static countVisibleItems(t,a,i=1){return kh(t.id,a,i)}static destroyAllItems=Mh;static countItems=Vh;static getNearbyItems=Hh;static getAllVisibleItems(t,a,i){return Uh(t.id,a,i)}static getItemPos=Wh;static setItemPos=jh;static getItemOffset=Kh;static setItemOffset=Zh;static getFloatData=rh;static setFloatData=sh;static getIntData=lh;static setIntData=oh;static getArrayData=dh;static setArrayData=ch;static isInArrayData=_h;static appendArrayData=hh;static removeArrayData=uh;static getArrayDataLength=Wt;static getUpperBound=mh;static onPluginError=Bp}class B{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=B.getInstance(t);if(a)return a;this._id=t,Z.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[StreamerObject]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerObject]: Unable to create with only id");let{streamDistance:t,drawDistance:a,worldId:i,interiorId:n,playerId:r,areaId:s,priority:l}=this.sourceInfo;const{modelId:o,x:d,y:c,z:u,rx:p,ry:g,rz:f,extended:y}=this.sourceInfo;return t??=v.OBJECT_SD,a??=v.OBJECT_DD,l??=0,y?(typeof i=="number"?i=[-1]:i??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof s=="number"?s=[-1]:s??=[-1],this._id=Ph(o,d,c,u,p,g,f,t,a,i,n,r,s,l)):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(s)?s=-1:s??=-1,this._id=Xh(o,d,c,u,p,g,f,i,n,r,t,a,s,l)),Z.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerObject]: Unable to destroy the object before create");return A.skip||Yh(this.id),Z.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.sourceInfo&&this.id!==-1?!0:B.isValid(this.id)}getModel(){return this.sourceInfo?this.sourceInfo.modelId:P.getIntData(S.OBJECT,this._id,j.MODEL_ID)}getPos(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot get position before create");return $h(this.id)}setPos(t,a,i){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set position before create");return Jh(this.id,t,a,i)}getRot(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot get rotation before create");return Qh(this.id)}setRot(t,a,i){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set rotation before create");return qh(this.id,t,a,i)}move(t,a,i,n,r=-1e3,s=-1e3,l=-1e3){if(this.id===-1)throw new Error("[StreamerObject]: Cannot start moving before create");if(n<0)throw new Error("[StreamerObject]: speed must not be less than 0");if(n>120*1e3)throw new Error("[StreamerObject]: speed more than 120 seconds, warn if it's not intentional");return this.isMoving()&&this.stop(),eu(this.id,t,a,i,n,r,s,l)}stop(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot stop moving before create");return tu(this.id)}isMoving(){return this.id===-1?!1:au(this.id)}attachCamera(t){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachCamera before both are created");return iu(t.id,this.id)}attachToObject(t,a,i,n,r,s,l,o=!0){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachToObject before both are created");return nu(this.id,t.id,a,i,n,r,s,l,o)}attachToPlayer(t,a,i,n,r,s,l){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachToPlayer before both are created");return ru(this.id,t.id,a,i,n,r,s,l)}attachToVehicle(t,a,i,n,r,s,l){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachToVehicle before both are created");return su(this.id,t.id,a,i,n,r,s,l)}edit(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to edit before create");return t.endObjectEditing(),lu(t.id,this.id)}isMaterialUsed(t){return this.id===-1?!1:ou(this.id,t)}removeMaterial(t){return this.id===-1||!this.isMaterialUsed(t)?0:du(this.id,t)}getMaterial(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to get material before create");return Pm(this.id,t)}setMaterial(t,a,i,n,r="#000"){if(this.id===-1)throw new Error("[StreamerObject]: Unable to set material before create");return cu(this.id,t,a,i,n,E(r))}isMaterialTextUsed(t){return this.id===-1?!1:_u(this.id,t)}removeMaterialText(t){return this.isMaterialTextUsed(t)?hu(this.id,t):0}getMaterialText(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to get material text before create");return Sm(this.id,t,this.sourceInfo?.charset||"utf8")}setMaterialText(t=this.sourceInfo?.charset,a,i,n=Ke.SIZE_256x128,r="Arial",s=24,l=1,o="#fff",d="#000",c=0){if(this.id===-1)throw new Error("[StreamerObject]: Unable to set material text before create");return this.sourceInfo&&(this.sourceInfo.charset=t),gm(t||"utf8",this.id,a,i,n,r,s,l,E(o),E(d),c)}getPlayerCameraTarget(t){const a=uu(t.id);if(a!==D.OBJECT_ID)return Z.get(a)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerObject]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.OBJECT,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.OBJECT,this.id)}setNoCameraCollision(){return mu(this.id)}getNoCameraCollision(){return pu(this.id)}static isValid=zh;static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.OBJECT,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return Z.get(t)}static getInstances(){return[...Z.values()]}}L.onExit(({next:e})=>(B.getInstances().forEach(t=>t.destroy()),Z.clear(),e()));const[xp,kp]=h({name:"OnDynamicObjectStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Mp,Vp]=h({name:"OnDynamicObjectStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===S.OBJECT?kp(a,B.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.OBJECT?Vp(a,B.getInstance(t)):i());const[Hp]=h({name:"OnDynamicObjectMoved",identifier:"i",beforeEach(e){return{object:B.getInstance(e)}}}),[Up]=h({name:"OnPlayerEditDynamicObject",identifier:"iiiiiiiii",defaultValue:!1,beforeEach(e,t,a,i,n,r,s,l,o){return{player:m.getInstance(e),object:B.getInstance(t),response:a,x:i,y:n,z:r,rX:s,rY:l,rZ:o}}}),[Wp]=h({name:"OnPlayerSelectDynamicObject",identifier:"iiiiii",beforeEach(e,t,a,i,n,r){return{player:m.getInstance(e),object:B.getInstance(t),modelId:a,x:i,y:n,z:r}}}),[jp]=h({name:"OnPlayerShootDynamicObject",identifier:"iiiiii",beforeEach(e,t,a,i,n,r){return{player:m.getInstance(e),object:B.getInstance(a),weapon:t,x:i,y:n,z:r}}}),[Kp]=h({name:"OnPlayerEditAttachedObject",defaultValue:!1,beforeEach(e,t,a,i,n,r,s,l,o,d,c,u,p,g){return{player:m.getInstance(e),response:t,index:a,modelId:i,boneId:n,fOffsetX:r,fOffsetY:s,fOffsetZ:l,fRotX:o,fRotY:d,fRotZ:c,fScaleX:u,fScaleY:p,fScaleZ:g}}}),Zp=Object.freeze({onMoved:Hp,onPlayerEdit:Up,onPlayerSelect:Wp,onPlayerShoot:jp,onPlayerEditAttached:Kp,onStreamIn:xp,onStreamOut:Mp});class _e{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=_e.getInstance(t);if(a)return a;this._id=t,ne.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[StreamerMapIcon]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerMapIcon]: Unable to create with only id");let{style:t,streamDistance:a,worldId:i,interiorId:n,playerId:r,areaId:s,priority:l}=this.sourceInfo;const{x:o,y:d,z:c,type:u,color:p,extended:g}=this.sourceInfo;if(u<0||u>63)throw new Error("[StreamerMapIcon]: Invalid map icon type");return t??=ke.LOCAL,a??=v.MAP_ICON_SD,l??=0,g?(typeof i=="number"?i=[-1]:i??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof s=="number"?s=[-1]:s??=[-1],this._id=Eh(o,d,c,u,E(p),t,a,i,n,r,s,l),ne.set(this._id,this),this):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(s)?s=-1:s??=-1,this._id=ph(o,d,c,u,E(p),i,n,r,a,t,s,l),ne.set(this._id,this),this)}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerMapIcon]: Unable to destroy the map icon before create");return A.skip||fh(this.id),ne.delete(this._id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:_e.isValid(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerMapIcon]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.MAP_ICON,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.MAP_ICON,this.id)}static isValid=gh;static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.MAP_ICON,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ne.get(t)}static getInstances(){return[...ne.values()]}}L.onExit(({next:e})=>(_e.getInstances().forEach(t=>t.destroy()),ne.clear(),e()));const[Xp,Yp]=h({name:"OnDynamicMapIconStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[zp,$p]=h({name:"OnDynamicMapIconStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===S.MAP_ICON?Yp(a,_e.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.MAP_ICON?$p(a,_e.getInstance(t)):i());const Jp=Object.freeze({onStreamIn:Xp,onStreamOut:zp});class k{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=k.getInstance(t);if(a)return a;this._id=t,me.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[StreamerPickup]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerPickup]: Unable to create with only id");let{streamDistance:t,worldId:a,interiorId:i,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{type:l,modelId:o,x:d,y:c,z:u,extended:p}=this.sourceInfo;if(l<0)throw new Error("[StreamerPickup]: Invalid pickup type");return t??=v.PICKUP_SD,s??=0,p?(typeof a=="number"?a=[-1]:a??=[-1],typeof i=="number"?i=[-1]:i??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=k.__inject_CreateDynamicPickupEx(o,l,d,c,u,t,a,i,n,r,s)):(Array.isArray(a)?a=-1:a??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=k.__inject_CreateDynamicPickup(o,l,d,c,u,a,i,n,t,r,s)),me.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerPickup]: Unable to destroy the pickup before create");return A.skip||k.__inject_DestroyDynamicPickup(this.id),me.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:k.isValid(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerPickup]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.PICKUP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.PICKUP,this.id)}static isValid=Pu;static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.PICKUP,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return me.get(t)}static getInstances(){return[...me.values()]}static __inject_CreateDynamicPickup=fu;static __inject_CreateDynamicPickupEx=Sh;static __inject_DestroyDynamicPickup=gu}L.onExit(({next:e})=>(k.getInstances().forEach(t=>t.destroy()),me.clear(),e()));const[Qp,qp]=h({name:"OnDynamicPickupStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[ef,tf]=h({name:"OnDynamicPickupStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===S.PICKUP?qp(a,k.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.PICKUP?tf(a,k.getInstance(t)):i());const[af]=h({name:"OnPlayerPickUpDynamicPickup",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),pickup:k.getInstance(t)}}}),nf=Object.freeze({onPlayerPickUp:af,onStreamIn:Qp,onStreamOut:ef});class z{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=z.getInstance(t);if(a)return a;this._id=t,ie.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[StreamerCheckpoint]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerCheckpoint]: Unable to create with only id");let{streamDistance:t,worldId:a,interiorId:i,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{size:l,x:o,y:d,z:c,extended:u}=this.sourceInfo;if(l<0)throw new Error("[StreamerCheckpoint]: Invalid checkpoint size");return t??=v.CP_SD,s??=0,u?(typeof a=="number"?a=[-1]:a??=[-1],typeof i=="number"?i=[-1]:i??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=yh(o,d,c,l,t,a,i,n,r,s)):(Array.isArray(a)?a=-1:a??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=eh(o,d,c,l,a,i,n,t,r,s)),ie.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerCheckpoint]: Unable to destroy the checkpoint before create");return A.skip||Ht(this.id),ie.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:z.isValid(this.id)}togglePlayer(t,a){if(this.id===-1)throw new Error("[StreamerCheckpoint]: Unable to toggle the player before create");return th(t.id,this.id,a),this}isPlayerIn(t){return this.id===-1?!1:ih(t.id,this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerCheckpoint]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.CP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.CP,this.id)}static isValid=Ut;static togglePlayerAll(t,a){return ah(t.id,a)}static getPlayerVisible(t){return ie.get(nh(t.id))}static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.CP,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ie.get(t)}static getInstances(){return[...ie.values()]}}L.onExit(({next:e})=>(z.getInstances().forEach(t=>t.destroy()),ie.clear(),e()));const[rf,sf]=h({name:"OnDynamicCheckPointStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[lf,of]=h({name:"OnDynamicCheckPointStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===S.CP?sf(a,z.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.CP?of(a,z.getInstance(t)):i());const[df]=h({name:"OnPlayerEnterDynamicCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),cp:z.getInstance(t)}}}),[cf]=h({name:"OnPlayerLeaveDynamicCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),cp:z.getInstance(t)}}}),_f=Object.freeze({onPlayerEnter:df,onPlayerLeave:cf,onStreamIn:rf,onStreamOut:lf});class ${sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=$.getInstance(t);if(a)return a;this._id=t,re.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[StreamerRaceCP]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerRaceCP]: Unable to create with only id");let{streamDistance:t,worldId:a,interiorId:i,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{type:l,size:o,x:d,y:c,z:u,nextX:p,nextY:g,nextZ:f,extended:y}=this.sourceInfo;if(l<0||l>8)throw new Error("[StreamerRaceCP]: Invalid type");if(o<0)throw new Error("[StreamerRaceCP]: Invalid size");return t??=v.RACE_CP_SD,s??=0,y?(typeof a=="number"?a=[-1]:a??=[-1],typeof i=="number"?i=[-1]:i??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=Ih(l,d,c,u,p,g,f,o,t,a,i,n,r,s)):(Array.isArray(a)?a=-1:a??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=Su(l,d,c,u,p,g,f,o,a,i,n,t,r,s)),re.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerRaceCP]: Unable to destroy the checkpoint before create");return A.skip||Ht(this.id),re.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:$.isValid(this.id)}togglePlayer(t,a){if(this.id===-1)throw new Error("[StreamerRaceCP]: Unable to toggle the player before create");return yu(t.id,this.id,a),this}static togglePlayerAll(t,a){return Iu(t.id,a)}isPlayerIn(t){return this.id===-1?!1:Eu(t.id,this.id)}static getPlayerVisible(t){return re.get(Au(t.id))}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerRaceCP]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.RACE_CP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.RACE_CP,this.id)}static isValid=Ut;static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.RACE_CP,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return re.get(t)}static getInstances(){return[...re.values()]}}L.onExit(({next:e})=>($.getInstances().forEach(t=>t.destroy()),re.clear(),e()));const[hf,uf]=h({name:"OnDynamicRaceCPStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[mf,pf]=h({name:"OnDynamicRaceCPStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===S.RACE_CP?uf(a,$.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.RACE_CP?pf(a,$.getInstance(t)):i());const[ff]=h({name:"OnPlayerEnterDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCP:$.getInstance(t)}}}),[gf]=h({name:"OnPlayerLeaveDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCp:$.getInstance(t)}}}),Pf=Object.freeze({onPlayerEnter:ff,onPlayerLeave:gf,onStreamIn:hf,onStreamOut:mf});class ee{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=ee.getInstance(t);if(a)return a;this._id=t,Q.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[StreamerActor]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerActor]: Unable to create with only id");let{streamDistance:t,worldId:a,interiorId:i,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{modelId:l,x:o,y:d,z:c,r:u,invulnerable:p,health:g,extended:f}=this.sourceInfo;return t??=v.ACTOR_SD,s??=0,f?(typeof a=="number"?a=[0]:a??=[0],typeof i=="number"?i=[-1]:i??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=wh(l,o,d,c,u,p,g,t,a,i,n,r,s)):(Array.isArray(a)?a=0:a??=0,Array.isArray(i)?i=-1:i??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=d_(l,o,d,c,u,p,g,a,i,n,t,r,s)),Q.set(this.id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerActor]: Unable to destroy the actor before create");return A.skip||c_(this.id),Q.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:ee.isValid(this.id)}isStreamedIn(t){return this.id===-1?!1:h_(this.id,t.id)}getVirtualWorld(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get virtual world before create");return u_(this.id)}setVirtualWorld(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set virtual world before create");return m_(this.id,t)}applyAnimation(t,a,i=4.1,n=!1,r=!0,s=!0,l=!1,o=0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to apply animation before create");if(!Xe(t,a))throw new Error(`[StreamerActor]: Invalid anim library or name ${t} ${a}`);return p_(this.id,t,a,i,n,r,s,l,o)}clearAnimations(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to clear animation before create");return f_(this.id)}getFacingAngle(){return g_(this.id)}setFacingAngle(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set facing angle before create");return P_(this.id,t)}getPos(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get pos before create");return S_(this.id)}setPos(t,a,i){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set pos before create");return y_(this.id,t,a,i)}getHealth(){return I_(this.id)}setHealth(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set health before create");return E_(this.id,t)}isInvulnerable(){return this.id===-1?!1:C_(this.id)}setInvulnerable(t=!0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set invulnerable before create");return A_(this.id,t)}getPlayerTarget(t){const a=N_(t.id);return Q.get(a)}getPlayerCameraTarget(t){const a=T_(t.id);return Q.get(a)}getSkin(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get skin before create");return Gs(this.id)}setSkin(t,a=!1){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set skin before create");return!a&&(t<0||t>311||t===74)?0:Fs(this.id,t)}getSpawnInfo(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get spawn info before create");return Bs(this.id)}getAnimation(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get animation before create");return D_(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.ACTOR,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.ACTOR,this.id)}static isValid=__;static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.ACTOR,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return Q.get(t)}static getInstances(){return[...Q.values()]}}L.onExit(({next:e})=>(ee.getInstances().forEach(t=>t.destroy()),Q.clear(),e()));const[Sf]=h({name:"OnDynamicActorStreamIn",identifier:"ii",beforeEach(e,t){return{actor:ee.getInstance(e),forPlayer:m.getInstance(t)}}}),[yf]=h({name:"OnDynamicActorStreamOut",identifier:"ii",beforeEach(e,t){return{actor:ee.getInstance(e),forPlayer:m.getInstance(t)}}}),[If]=h({name:"OnPlayerGiveDamageDynamicActor",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,a,i,n){return{player:m.getInstance(e),actor:ee.getInstance(t),amount:a,weapon:i,bodyPart:n}}}),Ef=Object.freeze({onStreamIn:Sf,onStreamOut:yf,onPlayerGiveDamage:If});class he{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=he.getInstance(t);if(a)return a;this._id=t,ue.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[Streamer3DTextLabel]: Unable to create again");if(!this.sourceInfo)throw new Error("[Streamer3DTextLabel]: Unable to create with only id");let{attachedPlayer:t,attachedVehicle:a,testLos:i,streamDistance:n,worldId:r,interiorId:s,playerId:l,areaId:o,priority:d}=this.sourceInfo;const{charset:c,text:u,color:p,drawDistance:g,x:f,y,z:w,extended:O}=this.sourceInfo;return t??=D.PLAYER_ID,a??=D.VEHICLE_ID,n??=v.TEXT_3D_LABEL_SD,i??=!1,d??=0,O?(typeof r=="number"?r=[-1]:r??=[-1],typeof s=="number"?s=[-1]:s??=[-1],typeof l=="number"?l=[-1]:l??=[-1],typeof o=="number"?o=[-1]:o??=[-1],this._id=mm(u,E(p),f,y,w,g,t,a,i,n,r,s,l,o,d,c||"utf8")):(Array.isArray(r)?r=-1:r??=-1,Array.isArray(s)?s=-1:s??=-1,Array.isArray(l)?l=-1:l??=-1,Array.isArray(o)?o=-1:o??=-1,this._id=um(c||"utf8",u,E(p),f,y,w,g,t,a,i,r,s,l,n,o,d)),ue.set(this.id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[Streamer3DTextLabel]: Unable to destroy before create");return A.skip||l_(this.id),ue.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:he.isValid(this.id)}getColor(){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to get color before create");return this.sourceInfo?this.sourceInfo.color:P.getIntData(S.TEXT_3D_LABEL,this._id,j.COLOR)}getCharset(){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to get charset before create");return this.sourceInfo?.charset}getText(){return fm(this.id,this.sourceInfo?.charset||"utf8")}updateText(t,a,i){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to update text before create");let n="";return this.sourceInfo&&(n=i||this.sourceInfo.charset||"utf8",this.sourceInfo.charset=n),pm(this.id,E(t),a,n)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.TEXT_3D_LABEL,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.TEXT_3D_LABEL,this.id)}setOffsets(t,a,i){if(this.id===-1)return 0;const n=P.setFloatData(S.TEXT_3D_LABEL,this.id,j.ATTACH_OFFSET_X,t);return P.setFloatData(S.TEXT_3D_LABEL,this.id,j.ATTACH_OFFSET_Y,a),P.setFloatData(S.TEXT_3D_LABEL,this.id,j.ATTACH_OFFSET_Z,i),this.sourceInfo&&(this.sourceInfo.x=t,this.sourceInfo.y=a,this.sourceInfo.z=i),n}attachToPlayer(t,a,i,n){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Cannot attachToPlayer before created");const r=typeof t=="number"?t:t.id,s=P.setIntData(S.TEXT_3D_LABEL,this.id,j.ATTACHED_PLAYER,r);return r!==D.PLAYER_ID&&this.setOffsets(a,i,n),this.sourceInfo&&(this.sourceInfo.attachedPlayer=r),s}attachToVehicle(t,a,i,n){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Cannot attachToVehicle before created");const r=typeof t=="number"?t:t.id,s=P.setIntData(S.TEXT_3D_LABEL,this.id,j.ATTACHED_VEHICLE,r);return r!==D.VEHICLE_ID&&this.setOffsets(a,i,n),this.sourceInfo&&(this.sourceInfo.attachedVehicle=r),s}static isValid=o_;static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.TEXT_3D_LABEL,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ue.get(t)}static getInstances(){return[...ue.values()]}}L.onExit(({next:e})=>(he.getInstances().forEach(t=>t.destroy()),ue.clear(),e()));const[Af,Cf]=h({name:"OnDynamic3dTextStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Nf,Tf]=h({name:"OnDynamic3dTextStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===S.TEXT_3D_LABEL?Cf(a,he.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.TEXT_3D_LABEL?Tf(a,he.getInstance(t)):i());const Df=Object.freeze({onStreamIn:Af,onStreamOut:Nf});class G{sourceInfo=null;_id=-1;get type(){return this.sourceInfo?.type}get id(){return this._id}constructor(t){if(typeof t=="number"){const a=G.getInstance(t);if(a)return a;this._id=t,q.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[StreamerArea]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerArea]: Unable to create with only id");let{worldId:t,interiorId:a,playerId:i}=this.sourceInfo;const{type:n,extended:r}=this.sourceInfo;if(r)if(typeof t=="number"?t=[-1]:t??=[-1],typeof a=="number"?a=[-1]:a??=[-1],typeof i=="number"?i=[-1]:i??=[-1],n==="circle"){const{x:s,y:l,size:o}=this.sourceInfo;if(o<0)throw new Error("[StreamerArea]: Invalid circle extend size");this._id=Ah(s,l,o,t,a,i)}else if(n==="cuboid"){const{minX:s,minY:l,minZ:o,maxX:d,maxY:c,maxZ:u}=this.sourceInfo;this._id=Dh(s,l,o,d,c,u,t,a,i)}else if(n==="cylinder"){const{x:s,y:l,minZ:o,maxZ:d,size:c}=this.sourceInfo;if(c<0)throw new Error("[StreamerArea]: Invalid cylinder extend size");this._id=Ch(s,l,o,d,c,t,a,i)}else if(n==="polygon"){const{points:s,minZ:l,maxZ:o}=this.sourceInfo;if(s.length%2!==0)throw new Error("[StreamerArea]: Unable to create polygon extended with asymmetrical points");this._id=vh(s,l,o,t,a,i)}else if(n==="rectangle"){const{minX:s,minY:l,maxX:o,maxY:d}=this.sourceInfo;this._id=Th(s,l,o,d,t,a,i)}else{const{x:s,y:l,z:o,size:d}=this.sourceInfo;if(d<0)throw new Error("[StreamerArea]: Invalid sphere extended size");this._id=Nh(s,l,o,d,t,a,i)}else if(Array.isArray(t)?t=-1:t??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(i)?i=-1:i??=-1,n==="circle"){const{x:s,y:l,size:o}=this.sourceInfo;if(o<0)throw new Error("[StreamerArea]: Invalid circle size");this._id=v_(s,l,o,t,a,i)}else if(n==="cuboid"){const{minX:s,minY:l,minZ:o,maxX:d,maxY:c,maxZ:u}=this.sourceInfo;this._id=b_(s,l,o,d,c,u,t,a,i)}else if(n==="cylinder"){const{x:s,y:l,minZ:o,maxZ:d,size:c}=this.sourceInfo;if(c<0)throw new Error("[StreamerArea]: Invalid cylinder size");this._id=w_(s,l,o,d,c,t,a,i)}else if(n==="polygon"){const{points:s,minZ:l,maxZ:o}=this.sourceInfo;if(s.length%2!==0)throw new Error("[StreamerArea]: Unable to create polygon with asymmetrical points");this._id=O_(s,l,o,t,a,i)}else if(n==="rectangle"){const{minX:s,minY:l,maxX:o,maxY:d}=this.sourceInfo;this._id=L_(s,l,o,d,t,a,i)}else{const{x:s,y:l,z:o,size:d}=this.sourceInfo;if(d<0)throw new Error("[StreamerArea]: Invalid sphere size");this._id=R_(s,l,o,d,t,a,i)}return q.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerArea]: Unable to destroy the area before create");return A.skip||G_(this.id),q.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:G.isValid(this.id)}getType(){if(this.id!==-1)throw new Error("[StreamerArea]: Unable to get type before create");return B_(this.id)}getPolygonPoints(){return x_(this.id)}getPolygonNumberPoints(){if(this.id!==-1)throw new Error("[StreamerArea]: Unable to getPolygonNumberPoints number before create");if(this.type!=="polygon")throw new Error("[StreamerArea]: getPolygonNumberPoints invalid area type");return xt(this.id)}isPlayerIn(t,a=!1){return this.id===-1?!1:k_(t.id,this.id,a)}static isPlayerInAny(t,a=!1){return M_(t.id,a)}isAnyPlayerIn(t=!1){return this.id===-1?!1:V_(this.id,t)}static isAnyPlayerInAny(t=!1){return H_(t)}static getPlayerAreas(t){return G.getPlayerAreasNumber(t)?U_(t.id).areas.map(a=>q.get(a)):[]}static getPlayerAreasNumber(t){return kt(t.id)}isPointIn(t,a,i){return this.id===-1?!1:W_(this.id,t,a,i)}static isPointInAny(t,a,i){return j_(t,a,i)}isLineIn(t,a,i,n,r,s){return this.id===-1?!1:K_(this.id,t,a,i,n,r,s)}static isLineInAny(t,a,i,n,r,s){return Z_(t,a,i,n,r,s)}static getForPoint(t,a,i){return G.getNumberForPoint(t,a,i)?X_(t,a,i).areas.map(n=>G.getInstance(n)):[]}static getNumberForPoint(t,a,i){return Mt(t,a,i)}static getForLine(t,a,i,n,r,s){return G.getNumberForLine(t,a,i,n,r,s)?Y_(t,a,i,n,r,s).areas.map(l=>q.get(l)):[]}static getNumberForLine(t,a,i,n,r,s){return Vt(t,a,i,n,r,s)}attachToObject(t,a=0,i=0,n=0){if(this.id===-1||t.id===-1)throw new Error("[StreamerArea]: Unable to toggle attach to object before create");return z_(this.id,t.id,xe.DYNAMIC,D.PLAYER_ID,a,i,n)}attachToPlayer(t,a=0,i=0,n=0){if(this.id===-1||t.id===-1)throw new Error("[StreamerArea]: Unable to toggle attach to player before create");return $_(this.id,t.id,a,i,n)}attachToVehicle(t,a=0,i=0,n=0){if(this.id===-1||t.id===-1)throw new Error("[StreamerArea]: Unable to toggle attach to vehicle before create");return J_(this.id,t.id,a,i,n)}toggleSpectateMode(t){if(this.id===-1)throw new Error("[StreamerArea]: Unable to toggle specate mode before create");return Q_(this.id,t)}isToggleSpectateMode(){return this.id===-1?!1:q_(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerArea]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.AREA,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.AREA,this.id)}static isValid=F_;static togglePlayerUpdate(t,a=!0){return P.toggleItemUpdate(t,S.AREA,a)}static hideForPlayer(t,a=-5e4){return P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?P.updateEx(t,i.x,i.y,i.z):P.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return q.get(t)}static getInstances(){return[...q.values()]}}L.onExit(({next:e})=>(G.getInstances().forEach(t=>t.destroy()),q.clear(),e()));const[vf,wf]=h({name:"OnDynamicAreaStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Rf,Lf]=h({name:"OnDynamicAreaStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===S.AREA?wf(a,G.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.AREA?Lf(a,G.getInstance(t)):i());const[bf]=h({name:"OnPlayerEnterDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:G.getInstance(t)}}}),[Of]=h({name:"OnPlayerLeaveDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:G.getInstance(t)}}}),Gf=Object.freeze({onStreamIn:vf,onStreamOut:Rf,onPlayerEnter:bf,onPlayerLeave:Of});class N{_id=D.PLAYER_ID;_name="";static recordStatus;get id(){return this._id}constructor(t){const a=samp.callNative("NPC_Create","s",t);if(this._id=a,this._name=t,a!==D.PLAYER_ID){U.has(a)&&new m(a);const i=N.getInstance(a);if(i)return i}return Ne.set(a,this),this}getName(){return this._name}destroy(){return A.skip||samp.callNative("NPC_Destroy","i",this._id),this}isValid(){return A.skip&&this._id!==-1?!0:N.isValid(this._id)}spawn(){return samp.callNative("NPC_Spawn","i",this._id),this}respawn(){return samp.callNative("NPC_Respawn","i",this._id),this}setPos(t,a,i){return samp.callNative("NPC_SetPos","ifff",this._id,t,a,i),this}setRot(t,a,i){return samp.callNative("NPC_SetRot","ifff",this._id,t,a,i),this}getRot(){const[t,a,i,n]=samp.callNative("NPC_GetRot","iFFF",this._id);return{rX:t,rY:a,rZ:i,ret:n}}setFacingAngle(t){return samp.callNative("NPC_SetFacingAngle","if",this._id,t),this}getFacingAngle(){const[t,a]=samp.callNative("NPC_GetFacingAngle","iF",this._id);return{angle:t,ret:a}}setVirtualWorld(t){return samp.callNative("NPC_SetVirtualWorld","ii",this._id,t),this}getVirtualWorld(){return samp.callNative("NPC_GetVirtualWorld","i",this._id)}move(t,a,i,n,r=-1){return!!samp.callNative("NPC_Move","ifffif",this._id,t,a,i,n,r)}moveToPlayer(t,a,i=-1){return!!samp.callNative("NPC_MoveToPlayer","iiif",this._id,t.id,a,i)}stopMove(){return samp.callNative("NPC_StopMove","i",this._id),this}isMoving(){return!!samp.callNative("NPC_IsMoving","i",this._id)}setSkin(t){return samp.callNative("NPC_SetSkin","ii",this._id,t),this}isStreamedIn(t){return!!samp.callNative("NPC_IsStreamedIn","ii",this._id,t.id)}isAnyStreamedIn(){return!!samp.callNative("NPC_IsAnyStreamedIn","i",this._id)}setInterior(t){return samp.callNative("NPC_SetInterior","ii",this._id,t),this}getInterior(){return samp.callNative("NPC_GetInterior","i",this._id)}setHealth(t){return samp.callNative("NPC_SetHealth","if",this._id,t),this}getHealth(){return samp.callNativeFloat("NPC_GetHealth","i",this._id)}setArmour(t){return samp.callNative("NPC_SetArmour","if",this._id,t),this}getArmour(){return samp.callNativeFloat("NPC_GetArmour","i",this._id)}isDead(){return!!samp.callNative("NPC_IsDead","i",this._id)}applyAnimation(t,a,i,n,r,s,l,o,d){return samp.callNative("NPC_ApplyAnimation","issfiiiiii",this._id,t,a,i,n,r,s,l,o,d),this}setWeapon(t){return samp.callNative("NPC_SetWeapon","ii",this._id,t),this}getWeapon(){return samp.callNative("NPC_GetWeapon","i",this._id)}setAmmo(t){return samp.callNative("NPC_SetAmmo","ii",this._id,t),this}getAmmo(){return samp.callNative("NPC_GetAmmo","i",this._id)}setKeys(t,a,i){return samp.callNative("NPC_SetKeys","iiii",this._id,t,a,i),this}getKeys(){const[t,a,i,n]=samp.callNative("NPC_GetKeys","iIII",this._id);return{upAndDown:t,leftAndDown:a,keys:i,ret:n}}setWeaponSkillLevel(t,a){return samp.callNative("NPC_SetWeaponSkillLevel","iii",this._id,t,a),this}getWeaponSkillLevel(t){return samp.callNative("NPC_GetWeaponSkillLevel","ii",this._id,t)}meleeAttack(t,a){return samp.callNative("NPC_MeleeAttack","iii",this._id,t,a),this}stopMeleeAttack(){return samp.callNative("NPC_StopMeleeAttack","i",this._id),this}isMeleeAttacking(){return!!samp.callNative("NPC_IsMeleeAttacking","i",this._id)}setFightingStyle(t){return samp.callNative("NPC_SetFightingStyle","ii",this._id,t),this}getFightingStyle(){return samp.callNative("NPC_GetFightingStyle","i",this._id)}enableReloading(t){return samp.callNative("NPC_EnableReloading","ii",this._id,t),this}isReloadEnabled(){return!!samp.callNative("NPC_IsReloadEnabled","i",this._id)}isReloading(){return!!samp.callNative("NPC_IsReloading","i",this._id)}enableInfiniteAmmo(t){return samp.callNative("NPC_EnableInfiniteAmmo","ii",this._id,t),this}isInfiniteAmmoEnabled(){return!!samp.callNative("NPC_IsInfiniteAmmoEnabled","i",this._id)}getWeaponState(){return samp.callNative("NPC_GetWeaponState","i",this._id)}setAmmoInClip(t){return samp.callNative("NPC_SetAmmoInClip","ii",this._id,t),this}getAmmoInClip(){return samp.callNative("NPC_GetAmmoInClip","i",this._id)}shoot(t,a,i,n,r,s,l,o,d,c,u){return samp.callNative("NPC_Shoot","iiiffffffii",this._id,t,a,i,n,r,s,l,o,d,c,u),this}isShooting(){return!!samp.callNative("NPC_IsShooting","i",this._id)}aimAt(t,a,i,n,r,s,l,o,d,c){return samp.callNative("NPC_AimAt","ifffiiifffi",this._id,t,a,i,n,r,s,l,o,d,c),this}aimAtPlayer(t,a,i,n,r,s,l,o,d,c,u){return samp.callNative("NPC_AimAtPlayer","iiiiiffffffi",this._id,t.id,a,i,n,r,s,l,o,d,c,u),this}stopAim(){return samp.callNative("NPC_StopAim","i",this._id),this}isAiming(){return!!samp.callNative("NPC_IsAiming","i",this._id)}isAimingAtPlayer(t){return!!samp.callNative("NPC_IsAimingAtPlayer","ii",this._id,t.id)}setWeaponAccuracy(t,a){return samp.callNative("NPC_SetWeaponAccuracy","iif",this._id,t,a),this}getWeaponAccuracy(t){return samp.callNativeFloat("NPC_GetWeaponAccuracy","ii",this._id,t)}setWeaponReloadTime(t,a){return samp.callNative("NPC_SetWeaponReloadTime","iii",this._id,t,a)}getWeaponReloadTime(t){return samp.callNative("NPC_GetWeaponReloadTime","ii",this._id,t)}getWeaponActualReloadTime(t){return samp.callNative("NPC_GetWeaponActualReloadTime","ii",this._id,t)}setWeaponShootTime(t,a){return samp.callNative("NPC_SetWeaponShootTime","iii",this._id,t,a)}getWeaponShootTime(t){return samp.callNative("NPC_GetWeaponShootTime","ii",this._id,t)}setWeaponClipSize(t,a){return samp.callNative("NPC_SetWeaponClipSize","iii",this._id,t,a)}getWeaponClipSize(t){return samp.callNative("NPC_GetWeaponClipSize","ii",this._id,t)}getWeaponActualClipSize(t){return samp.callNative("NPC_GetWeaponActualClipSize","ii",this._id,t)}enterVehicle(t,a,i){return samp.callNative("NPC_EnterVehicle","iiii",this._id,t.id,a,i),this}exitVehicle(){return samp.callNative("NPC_ExitVehicle","i",this._id),this}putInVehicle(t,a){return samp.callNative("NPC_PutInVehicle","iii",this._id,t.id,a)}removeFromVehicle(){return samp.callNative("NPC_RemoveFromVehicle","i",this._id)}getVehicle(){return C.getInstance(this.getVehicleID())}getVehicleID(){return samp.callNative("NPC_GetVehicle","i",this._id)}getVehicleSeat(){return samp.callNative("NPC_GetVehicleSeat","i",this._id)}getEnteringVehicle(){return C.getInstance(this.getEnteringVehicleId())}getEnteringVehicleId(){return samp.callNative("NPC_GetEnteringVehicle","i",this._id)}getEnteringVehicleSeat(){return samp.callNative("NPC_GetEnteringVehicleSeat","i",this._id)}isEnteringVehicle(){return!!samp.callNative("NPC_IsEnteringVehicle","i",this._id)}useVehicleSiren(t=!0){return samp.callNative("NPC_UseVehicleSiren","ii",this._id,t)}isVehicleSirenUsed(){return!!samp.callNative("NPC_IsVehicleSirenUsed","i",this._id)}setVehicleHealth(t){return samp.callNative("NPC_SetVehicleHealth","if",this._id,t)}getVehicleHealth(){return samp.callNativeFloat("NPC_GetVehicleHealth","i",this._id)}setVehicleHydraThrusters(t){return samp.callNative("NPC_SetVehicleHydraThrusters","ii",this._id,t)}getVehicleHydraThrusters(){return samp.callNative("NPC_GetVehicleHydraThrusters","i",this._id)}setVehicleGearState(t){return samp.callNative("NPC_SetVehicleGearState","ii",this._id,t)}getVehicleGearState(){return samp.callNative("NPC_GetVehicleGearState","i",this._id)}setVehicleTrainSpeed(t){return samp.callNative("NPC_SetVehicleTrainSpeed","if",this._id,t)}getVehicleTrainSpeed(){return samp.callNativeFloat("NPC_GetVehicleTrainSpeed","i",this._id)}resetAnimation(){return samp.callNative("NPC_ResetAnimation","i",this._id)}setAnimation(t,a,i,n,r,s,l){return samp.callNative("NPC_SetAnimation","iifiiiii",this._id,t,a,i,n,r,s,l)}getAnimation(){const[t,a,i,n,r,s,l,o]=samp.callNative("NPC_GetAnimation","iIFIIIII",this._id);return{animationId:t,delta:a,loop:!!i,lockX:!!n,lockY:!!r,freeze:!!s,time:l,ret:o}}clearAnimations(){return samp.callNative("NPC_ClearAnimations","i",this._id)}setSpecialAction(t){return samp.callNative("NPC_SetSpecialAction","ii",this._id,t)}getSpecialAction(){return samp.callNative("NPC_SetSpecialAction","i",this._id)}startPlayback(t,a,i,n,r,s,l,o){return samp.callNative("NPC_StartPlayback","isiffffff",this._id,t,a,i,n,r,s,l,o)}startPlaybackEx(t,a,i,n,r,s,l,o){return samp.callNative("NPC_StartPlaybackEx","iiiffffff",this._id,t,a,i,n,r,s,l,o)}stopPlayback(){return samp.callNative("NPC_StopPlayback","i",this._id)}pausePlayback(t){return samp.callNative("NPC_PausePlayback","ii",this._id,t)}isPlayingPlayback(){return!!samp.callNative("NPC_IsPlayingPlayback","i",this._id)}isPlaybackPaused(){return!!samp.callNative("NPC_IsPlaybackPaused","i",this._id)}playNode(t,a=Oe.JOG,i=Ge.AUTO,n=0,r=!0){return!!samp.callNative("NPC_PlayNode","iiiffi",this._id,t,a,i,n,r)}stopPlayingNode(){return!!samp.callNative("NPC_StopPlayingNode","i",this._id)}pausePlayingNode(){return!!samp.callNative("NPC_PausePlayingNode","i",this._id)}resumePlayingNode(){return!!samp.callNative("NPC_ResumePlayingNode","i",this._id)}isPlayingNodePaused(){return!!samp.callNative("NPC_IsPlayingNodePaused","i",this._id)}isPlayingNode(){return!!samp.callNative("NPC_IsPlayingNode","i",this._id)}changeNode(t,a){return samp.callNative("NPC_ChangeNode","iii",this._id,t,a)}updateNodePoint(t){return!!samp.callNative("NPC_UpdateNodePoint","ii",this._id,t)}setInvulnerable(t){return samp.callNative("NPC_SetInvulnerable","ii",this._id,t)}isInvulnerable(){return!!samp.callNative("NPC_IsInvulnerable","i",this._id)}setSurfingOffsets(t,a,i){return samp.callNative("NPC_SetSurfingOffsets","ifff",this._id,t,a,i)}getSurfingOffsets(){const[t,a,i,n]=samp.callNative("NPC_GetSurfingOffsets","iFFF",this._id);return{x:t,y:a,z:i,ret:n}}setSurfingVehicle(t){return samp.callNative("NPC_SetSurfingVehicle","ii",this._id,t.id)}getSurfingVehicle(){return C.getInstance(this.getSurfingVehicleId())}getSurfingVehicleId(){return samp.callNative("NPC_GetSurfingVehicle","i",this._id)}setSurfingPlayerObject(t){return samp.callNative("NPC_SetSurfingPlayerObject","ii",this._id,t)}getSurfingPlayerObject(){return samp.callNative("NPC_GetSurfingPlayerObject","i",this._id)}resetSurfingData(){return samp.callNative("NPC_ResetSurfingData","i",this._id)}setSurfingDynamicObject(t){return this.setSurfingPlayerObject(P.getItemInternalID(new m(this._id),S.OBJECT,t.id))}getSurfingDynamicObject(){return B.getInstance(this.getSurfingDynamicObjectId())}getSurfingDynamicObjectId(){return P.getItemStreamerID(new m(this._id),S.OBJECT,this.getSurfingPlayerObject())}static loadRecord(t){return samp.callNative("NPC_LoadRecord","s",t)}static unloadRecord(t){return!!samp.callNative("NPC_UnloadRecord","i",t)}static isValidRecord(t){return!!samp.callNative("NPC_IsValidRecord","i",t)}static getRecordCount(){return samp.callNative("NPC_GetRecordCount","")}static unloadAllRecords(){return!!samp.callNative("NPC_UnloadAllRecords","")}static createPath(){return samp.callNative("NPC_CreatePath","")}static destroyPath(t){return!!samp.callNative("NPC_DestroyPath","i",t)}static destroyAllPath(){return!!samp.callNative("NPC_DestroyAllPath","")}static getPathCount(){return samp.callNative("NPC_GetPathCount","")}static addPointToPath(t,a,i,n,r){return!!samp.callNative("NPC_AddPointToPath","iffff",t,a,i,n,r)}static removePointFromPath(t,a){return!!samp.callNative("NPC_RemovePointFromPath","ii",t,a)}static clearPath(t){return!!samp.callNative("NPC_ClearPath","i",t)}static getPathPointCount(t){return samp.callNative("NPC_GetPathPointCount","i",t)}static getPathPoint(t,a){const[i,n,r,s,l]=samp.callNative("NPC_GetPathPoint","ii",t,a);return{x:i,y:n,z:r,stopRange:s,ret:l}}static isValidPath(t){return!!samp.callNative("NPC_IsValidPath","i",t)}getCurrentPathPointIndex(){return samp.callNative("NPC_GetCurrentPathPointIndex","i",this._id)}moveByPath(t,a=Oe.JOG,i=Ge.AUTO,n=!1){return!!samp.callNative("NPC_MoveByPath","iiifi",this._id,t,a,i,n)}hasPathPointInRadius(t,a,i,n,r){return!!samp.callNative("NPC_HasPathPointInRange","iiffff",this._id,t,a,i,n,r)}static openNode(t){return!!samp.callNative("NPC_OpenNode","i",t)}static closeNode(t){return!!samp.callNative("NPC_CloseNode","i",t)}static isNodeOpen(t){return!!samp.callNative("NPC_IsNodeOpen","i",t)}static getNodeType(t){return samp.callNative("NPC_GetNodeType","i",t)}static setNodePoint(t,a){return!!samp.callNative("NPC_SetNodePoint","ii",t,a)}static getNodePointPosition(t){const[a,i,n,r]=samp.callNative("NPC_GetNodePointPosition","iFFF",t);return{x:a,y:i,z:n,ret:!!r}}static getNodePointCount(t){return samp.callNative("NPC_GetNodePointCount","i",t)}static getNodeInfo(t){const[a,i,n,r]=samp.callNative("NPC_GetNodePointPosition","iIII",t);return{vehNodes:a,pedNodes:i,naviNode:n,ret:!!r}}static connect=ui;static startRecordingPlayerData(t,a,i){if(t.isRecording)throw new Error("[NpcFunc]: It should be stopped before recording");ts(t.id,a,i),t.isRecording=!0}static stopRecordingPlayerData(t){if(!t.isRecording)throw new Error("[NpcFunc]: It should be started before stop");as(t.id),t.isRecording=!1}static startRecordingPlayback(t,a){if(N.recordStatus>=H.START)throw new Error("[NpcFunc]: The current status cannot be replayed");Rs(t,a),N.recordStatus=H.START}static stopRecordingPlayback(){if(N.recordStatus<H.START)throw new Error("[NpcFunc]: The current status cannot be stopped");Ls(),N.recordStatus=H.NONE}static pauseRecordingPlayback(){if(N.recordStatus!==H.START)throw new Error("[NpcFunc]: The current status cannot be paused");bs(),N.recordStatus=H.PAUSE}static resumeRecordingPlayback(){if(N.recordStatus!==H.PAUSE)throw new Error("[NpcFunc]: The current status cannot be paused");Os(),N.recordStatus=H.START}static isValid(t){return!!samp.callNative("NPC_IsValid","i",t)}static getInstance(t){return Ne.get(t)}static getInstances(){return[...Ne.values()]}}L.onExit(({next:e})=>(Ne.clear(),e()));const[Ff]=h({name:"OnNpcConnect",beforeEach(e){return{myPlayerId:e}}}),[Bf]=h({name:"OnNpcDisconnect",beforeEach(e){return{reason:e}}}),[xf]=h({name:"OnNpcModeInit"}),[kf]=h({name:"OnNpcModeExit"}),[Mf]=h({name:"OnClientMessageI18n",identifier:"iai",beforeEach(e,t){return{color:e,buffer:t,string:I.decodeFromBuf(t)}}}),[Vf]=h({name:"OnNPCFinishMove",beforeEach(e){return{npc:N.getInstance(e)}}}),[Hf]=h({name:"OnNPCCreate",beforeEach(e){return{npc:N.getInstance(e)}}}),[Uf]=h({name:"OnNPCDestroy",beforeEach(e){return{npc:N.getInstance(e)}},afterEach({npc:e}){Ne.delete(e.id)}}),[Wf]=h({name:"OnNPCWeaponStateChange",beforeEach(e,t,a){return{npc:N.getInstance(e),newState:t,oldState:a}}}),[jf]=h({name:"OnNPCTakeDamage",beforeEach(e,t,a,i,n){return{npc:N.getInstance(e),damager:m.getInstance(t),damage:a,weapon:i,bodyPart:n}}}),[Kf]=h({name:"OnNPCGiveDamage",beforeEach(e,t,a,i,n){return{npc:N.getInstance(e),damager:m.getInstance(t),damage:a,weapon:i,bodyPart:n}}}),[Zf]=h({name:"OnNPCDeath",beforeEach(e,t,a){return{npc:N.getInstance(e),killer:t,reason:a}}}),[Xf]=h({name:"OnNpcSpawn",beforeEach(e){return{npc:N.getInstance(e)}}}),[Yf]=h({name:"OnNpcRespawn",beforeEach(e){return{npc:N.getInstance(e)}}}),[zf]=h({name:"OnNPCPlaybackStart",beforeEach(e,t){return{npc:N.getInstance(e),recordId:t}}}),[$f]=h({name:"OnNPCPlaybackEnd",beforeEach(e,t){return{npc:N.getInstance(e),recordId:t}}}),[Jf]=h({name:"OnNPCWeaponShot",beforeEach(e,t,a,i,n,r,s){return{npc:N.getInstance(e),weapon:t,hitType:a,hitId:i,fX:n,fY:r,fZ:s}}}),[Qf]=h({name:"OnNPCFinishNodePoint",beforeEach(e,t,a){return{npc:N.getInstance(e),nodeId:t,pointId:a}}}),[qf]=h({name:"OnNPCFinishNode",beforeEach(e,t){return{npc:N.getInstance(e),nodeId:t}}}),[eg]=h({name:"OnNPCChangeNode",beforeEach(e,t,a){return{npc:N.getInstance(e),newNodeId:t,oldNodeId:a}}}),[tg]=h({name:"OnNPCFinishMovePath",beforeEach(e,t){return{npc:N.getInstance(e),pathId:t}}}),[ag]=h({name:"OnNPCFinishMovePathPoint",beforeEach(e,t,a){return{npc:N.getInstance(e),pathId:t,pointIndex:a}}}),ig=Object.freeze({onConnect:Ff,onDisconnect:Bf,onModeInit:xf,onModeExit:kf,onClientMessage:Mf,onFinishMove:Vf,onCreate:Hf,onDestroy:Uf,onSpawn:Xf,onRespawn:Yf,onWeaponStateChange:Wf,onTakeDamage:jf,onGiveDamage:Kf,onDeath:Zf,onPlaybackStart:zf,onPlaybackEnd:$f,onWeaponShot:Jf,onFinishNodePoint:Qf,onFinishNode:qf,onChangeNode:eg,onFinishMovePath:tg,onFinishMovePathPoint:ag});class ng{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getNetworkStats(){return ji()}static getPlayerNetworkStats(t){return Wi(t.id)}static getBytesReceived(t){return bi(t.id)}static getBytesSent(t){return Gi(t.id)}static getConnectionStatus(t){return xi(t.id)}static getConnectedTime(t){return Ri(t.id)}static getIpPort(t){return ki(t.id)}static getMessagesReceived(t){return Li(t.id)}static getMessagesRecvPerSecond(t){return Fi(t.id)}static getMessagesSent(t){return Oi(t.id)}static getPacketLossPercent(t){return Bi(t.id)}}class rg{_text;_time;_style;get text(){return this._text}set text(t){this._text=t}get time(){return this._time}set time(t){this._time=t}get style(){return this._style}set style(t){this._style=t}constructor(t,a,i){this._text=t,this._time=a,this._style=i}static hideForAll(t){Xa(t)}static has(t,a){return vn(t.id,a)}forAll(t="win1252"){Za(I.encodeToBuf(I.convertSpecialChar(this.text),t),this.time,this.style)}forPlayer(t,a="win1252"){Dn(t.id,I.encodeToBuf(I.convertSpecialChar(this.text),a),this.time,this.style)}hideForPlayer(t){return Rn(t.id,this.style)}}class fe{_itemCount=0;get itemCount(){return this._itemCount}_id=-1;get id(){return this._id}_title;get title(){return this._title}set title(t){this._title=t}_columns=1;get columns(){return this._columns}set columns(t){if(t!==1&&t!==2)throw new Error("[Menu]: The menu column number interval is between 1 and 2");this._columns=t}_x;get x(){return this._x}set x(t){this._x=t}_y;get y(){return this._y}set y(t){this._y=t}_col1width;get col1width(){return this._col1width}set col1width(t){this._col1width=t}_col2width;get col2width(){return this._col2width}set col2width(t){this._col2width=t}constructor(t,a,i,n,r,s){this._title=t,this.columns=a,this._x=i,this._y=n,this._col1width=r,this._col2width=s}create(){if(this._id!==-1)throw new Error("[Menu]: Cannot be created twice");if(fe.getInstances().length===V.MAX_MENUS)throw new Error("[Menu]: The maximum number of menus allowed to be created has been reached 128");return this._id=vo(this.title,this.columns,this.x,this.y,this.col1width,this.col2width),Ce.set(this._id,this),this}destroy(){if(this._id===-1)throw new Error("[Menu]: Cannot destroy before create");return A.skip||wo(this.id),Ce.delete(this._id),this._id=-1,this}addItem(t,a){if(this._id===-1)throw new Error("[Menu]: Cannot addItem before create");if(this._itemCount===V.MAX_MENU_ROW)throw new Error("[Menu]: The maximum number of items allowed to be added has been reached 12");if(t!==0&&t!==1)throw new Error("[Menu]: Wrong number of columns");return Ro(this.id,t,a),this._itemCount++,this}setColumnHeader(t,a){if(this._id===-1)throw new Error("[Menu]: Cannot setColumnHeader before create");if(t!==0&&t!==1)throw new Error("[Menu]: Wrong number of columns");return Lo(this.id,t,a),this}disable(){if(this._id===-1)throw new Error("[Menu]: Cannot disable menu before create");return Fo(this.id),this}disableRow(t){if(this._id===-1)throw new Error("[Menu]: Cannot disable row before create");if(t<0||t>this.itemCount-1)throw new Error("[Menu]: Wrong number of rows");Bo(this.id,t)}isValid(){return A.skip&&this.id!==-1?!0:fe.isValid(this.id)}showForPlayer(t){if(this._id===-1)throw new Error("[Menu]: Cannot show menu before create");return bo(this.id,t.id)}hideForPlayer(t){if(this._id===-1)throw new Error("[Menu]: Cannot hide menu before create");return Oo(this.id,t.id)}isDisabled(){return this._id===-1?!1:Io(this.id)}isRowDisabled(t){return this._id===-1||t<0||t>this._itemCount?!1:Eo(this.id,t)}getItems(t){return this._id===-1?0:Ao(this.id,t)}getPos(){return this._id===-1?{fX:this.x,fY:this.y}:Co(this.id)}getColumnWidth(){return this.id===-1?{fColumn1:this.col1width,fColumn2:this.col2width}:No(this.id)}getColumnHeader(t){if(this._id===-1)throw new Error("[Menu]: Cannot get column header before create");return To(this.id,t)}getItem(t,a){if(this._id===-1)throw new Error("[Menu]: Cannot get item before create");if(a<0||a>this.getItems(t)-1)throw new Error("[Menu]: invalid getItem range");return Do(this.id,t,a)}static isValid=Go;static getInstance(t){return Ce.get(t)}static getInstances(){return[...Ce.values()]}static getInstanceByPlayer(t){return this.getInstances().find(a=>a.id===xo(t.id))}}L.onExit(({next:e})=>(fe.getInstances().forEach(t=>t.destroy()),Ce.clear(),e()));const[sg]=h({name:"OnPlayerExitedMenu",beforeEach(e){return{player:m.getInstance(e)}}}),[lg]=h({name:"OnPlayerSelectedMenuRow",beforeEach(e,t){const a=m.getInstance(e),i=fe.getInstanceByPlayer(a);return{player:a,menu:i,row:t}}}),og=Object.freeze({onPlayerExited:sg,onPlayerSelectedRow:lg});class b{sourceInfo;constructor(t){this.sourceInfo=t}_id=-1;get id(){return this._id}create(){if(this.id!==-1)throw new Error("[GangZone]: Unable to create again");const{player:t}=this.sourceInfo;if(t){if(b.getInstances(!1).length===V.MAX_GANG_ZONES)throw new Error("[GangZone]: Unable to continue to create gangzone, maximum allowable quantity has been reached");const{minX:a,minY:i,maxX:n,maxY:r}=this.sourceInfo;this._id=ad(t.id,a,i,n,r);const s=$e.onDisconnect(({player:l,next:o})=>{o(),l===this.sourceInfo.player&&(this.isValid()&&this.destroy(),s())});Ae.set(this.id,this)}else{if(b.getInstances(!0).length===V.MAX_GANG_ZONES)throw new Error("[GangZone]: Unable to continue to create gangzone, maximum allowable quantity has been reached");const{minX:a,minY:i,maxX:n,maxY:r}=this.sourceInfo;this._id=Zo(a,i,n,r),Ee.set(this.id,this)}}destroy(){if(this.id===-1)throw new Error("[GangZone]: Unable to destroy the gangzone before create");const{player:t}=this.sourceInfo;t?(A.skip||id(t.id,this.id),Ae.delete(this.id)):(A.skip||Xo(this.id),Ee.delete(this.id)),this._id=-1}showForAll(t){if(this.id===-1)throw new Error("[GangZone]: Unable to show the gangzone before create");if(!this.sourceInfo.player)return zo(this.id,t),this;throw new Error("[GangZone]: player's gangzone should not be show for all.")}showForPlayer(t,a){if(this.id===-1)throw new Error("[GangZone]: Unable to show the gangzone before create");const i=this.sourceInfo.player;if(i)nd(i.id,this.id,E(t));else if(a)Yo(a.id,this.id,t);else throw new Error("[GangZone]: invalid player for show");return this}hideForAll(){if(this.id===-1)throw new Error("[GangZone]: Unable to hide the gangzone before create");if(!this.sourceInfo.player)return Jo(this.id),this;throw new Error("[GangZone]: player's gangzone should not be hide for all.")}hideForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to hide the gangzone before create");const a=this.sourceInfo.player;if(a)rd(a.id,this.id);else if(t)$o(t.id,this.id);else throw new Error("[GangZone]: invalid player for hide");return this}flashForAll(t){if(this.id===-1)throw new Error("[GangZone]: Unable to flash the gangzone before create");if(!this.sourceInfo.player)return qo(this.id,t),this;throw new Error("[GangZone]: player's gangzone should not be flash for all.")}flashForPlayer(t,a){if(this.id===-1)throw new Error("[GangZone]: Unable to flash the gangzone before create");const i=this.sourceInfo.player;if(i)sd(i.id,this.id,E(a));else if(t)Qo(t.id,this.id,a);else throw new Error("[GangZone]: invalid player for flash");return this}stopFlashForAll(){if(this.id===-1)throw new Error("[GangZone]: Unable to stop flash the gangzone before create");if(!this.sourceInfo.player)return td(this.id),this;throw new Error("[GangZone]: player's gangzone should not be stop flash for all.")}stopFlashForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to stop flash the gangzone before create");const a=this.sourceInfo.player;if(a)ld(a.id,this.id);else if(t)ed(t.id,this.id);else throw new Error("[GangZone]: invalid player for flash");return this}isValid(){if(A.skip&&this.id!==-1)return!0;if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?b.isValidPlayer(t.id,this.id):b.isValidGlobal(this.id)}isPlayerIn(t){if(this.id===-1)return!1;const a=this.sourceInfo.player;return a?dd(a.id,this.id):Mo(t.id,this.id)}isVisibleForPlayer(t){if(this.id===-1)return!1;const a=this.sourceInfo.player;return a?cd(a.id,this.id):Vo(t.id,this.id)}getColorForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to get color before create");const a=this.sourceInfo.player;return a?_d(a.id,this.id):Ho(t.id,this.id)}getFlashColorForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to get flash color before create");const a=this.sourceInfo.player;return a?hd(a.id,this.id):Uo(t.id,this.id)}isFlashingForPlayer(t){if(this.id===-1)return!1;const a=this.sourceInfo.player;return a?ud(a.id,this.id):Wo(t.id,this.id)}getPos(){if(this.id===-1)throw new Error("[GangZone]: Unable to get position before create");const t=this.sourceInfo.player;return t?md(t.id,this.id):jo(this.id)}useCheck(t){if(this.id===-1)throw new Error("[GangZone]: Unable to use check before create");const a=this.sourceInfo.player;return a?pd(a.id,this.id,t):Ko(this.id,t),this}static isValidPlayer=od;static isValidGlobal=ko;static getInstance(t,a){return a?Ee.get(t):Ae.get(t)}static getInstances(t){return t?[...Ee.values()]:[...Ae.values()]}}L.onExit(({next:e})=>(b.getInstances(!0).forEach(t=>t.destroy()),b.getInstances(!1).forEach(t=>t.destroy()),Ee.clear(),Ae.clear(),e()));const[dg]=h({name:"OnPlayerEnterGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[cg]=h({name:"OnPlayerLeaveGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[_g]=h({name:"OnPlayerEnterPlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[hg]=h({name:"OnPlayerLeavePlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[ug]=h({name:"OnPlayerClickGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[mg]=h({name:"OnPlayerClickPlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),pg=Object.freeze({onPlayerEnterGlobal:dg,onPlayerLeaveGlobal:cg,onPlayerEnterPlayer:_g,onPlayerLeavePlayer:hg,onPlayerClickGlobal:ug,onPlayerClickPlayer:mg});class _{sourceInfo;_id=-1;get id(){return this._id}constructor(t){this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[TextDraw]: Unable to create again");const{x:t,y:a,text:i,player:n,charset:r="iso-8859-1"}=this.sourceInfo,s=I.encodeToBuf(I.convertSpecialChar(i),r);if(n){if(_.getInstances(!1).length===V.MAX_TEXT_DRAWS)throw new Error("[TextDraw]: Unable to continue to create textdraw, maximum allowable quantity has been reached");this._id=_.__inject__CreatePlayerTextDraw(n.id,t,a,s);const l=$e.onDisconnect(({player:o,next:d})=>{const c=d();return o===n&&(this.isValid()&&this.destroy(),l()),c});De.set(this.id,this)}else{if(_.getInstances(!0).length===V.MAX_TEXT_DRAWS)throw new Error("[TextDraw]: Unable to continue to create textdraw, maximum allowable quantity has been reached");this._id=_.__inject__TextDrawCreate(t,a,s),Te.set(this.id,this)}return this}destroy(){this.id===-1&&_.beforeCreateWarn("destroy the textdraw");const{player:t}=this.sourceInfo;return t?(A.skip||_.__inject__PlayerTextDrawDestroy(t.id,this.id),De.delete(this.id)):(A.skip||_.__inject__TextDrawDestroy(this.id),Te.delete(this.id)),this._id=-1,this}setFont(t){if(this.id===-1)return _.beforeCreateWarn("set font"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawFont(a.id,this.id,t):_.__inject__TextDrawFont(this.id,t),this}setColor(t){if(this.id===-1)return _.beforeCreateWarn("set color"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawColor(a.id,this.id,t):_.__inject__TextDrawColor(this.id,t),this}setBoxColors(t){if(this.id===-1)return _.beforeCreateWarn("set box color"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawBoxColor(a.id,this.id,t):_.__inject__TextDrawBoxColor(this.id,t),this}setBackgroundColors(t){if(this.id===-1)return _.beforeCreateWarn("set background color"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawBackgroundColor(a.id,this.id,t):_.__inject__TextDrawBackgroundColor(this.id,t),this}setAlignment(t){if(this.id===-1)return _.beforeCreateWarn("set alignment"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawAlignment(a.id,this.id,t):_.__inject__TextDrawAlignment(this.id,t),this}setLetterSize(t,a){if(this.id===-1)return _.beforeCreateWarn("set letter size"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawLetterSize(i.id,this.id,t,a):_.__inject__TextDrawLetterSize(this.id,t,a),this}setOutline(t){if(this.id===-1)return _.beforeCreateWarn("set outline model"),this;if(t<0)throw new Error("[TextDraw]: Invalid outline value");const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawSetOutline(a.id,this.id,t):_.__inject__TextDrawSetOutline(this.id,t),this}setPreviewModel(t){if(this.id===-1)return _.beforeCreateWarn("set preview model"),this;this.setFont(Ie.MODEL_PREVIEW);const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawSetPreviewModel(a.id,this.id,t):_.__inject__TextDrawSetPreviewModel(this.id,t),this}setPreviewRot(t,a,i,n=1){if(this.id===-1)return _.beforeCreateWarn("set preview rot"),this;this.setFont(Ie.MODEL_PREVIEW);const{player:r}=this.sourceInfo;return r?_.__inject__PlayerTextDrawSetPreviewRot(r.id,this.id,t,a,i,n):_.__inject__TextDrawSetPreviewRot(this.id,t,a,i,n),this}setPreviewVehColors(t,a){if(this.id===-1)return _.beforeCreateWarn("set preview veh col"),this;this.setFont(Ie.MODEL_PREVIEW);const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawSetPreviewVehicleColors(i.id,this.id,t,a):_.__inject__TextDrawSetPreviewVehicleColors(this.id,t,a),this}setProportional(t=!0){if(this.id===-1)return _.beforeCreateWarn("set Proportional"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawSetProportional(a.id,this.id,t):_.__inject__TextDrawSetProportional(this.id,t),this}setSelectable(t){if(this.id===-1)return _.beforeCreateWarn("set Selectable"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawSetSelectable(a.id,this.id,t):_.__inject__TextDrawSetSelectable(this.id,t),this}setShadow(t){if(this.id===-1)return _.beforeCreateWarn("set shadow"),this;if(t<0)throw new Error("[TextDraw]: Invalid shadow value");const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawSetShadow(a.id,this.id,t):_.__inject__TextDrawSetShadow(this.id,t),this}setString(t,a){if(this.id===-1)return _.beforeCreateWarn("set string"),this;if(t.length===0||t.length>1024)throw new Error("[TextDraw]: Invalid text length");const{player:i,charset:n="iso-8859-1"}=this.sourceInfo,r=I.encodeToBuf(I.convertSpecialChar(t),n);return i?_.__inject__PlayerTextDrawSetString(i.id,this.id,r):a?_.__inject__TextDrawSetStringForPlayer(this.id,a.id,r):_.__inject__TextDrawSetString(this.id,r),this}setTextSize(t,a){if(this.id===-1)return _.beforeCreateWarn("set TextSize"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawTextSize(i.id,this.id,t,a):_.__inject__TextDrawTextSize(this.id,t,a),this}useBox(t){if(this.id===-1)return _.beforeCreateWarn("set TextSize"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawUseBox(a.id,this.id,t):_.__inject__TextDrawUseBox(this.id,t),this}static beforeCreateWarn(t){throw new Error(`[TextDraw]: Unable to ${t} before create`)}show(t){if(this.id===-1)return _.beforeCreateWarn("show"),this;const a=this.sourceInfo.player;if(a)_.__inject__PlayerTextDrawShow(a.id,this.id);else if(t)_.__inject__TextDrawShowForPlayer(t.id,this.id);else throw new Error("[TextDraw]: invalid player for show");return this}hide(t){if(this.id===-1)return _.beforeCreateWarn("hide"),this;const a=this.sourceInfo.player;if(a)_.__inject__PlayerTextDrawHide(a.id,this.id);else if(t)_.__inject__TextDrawHideForPlayer(t.id,this.id);else throw new Error("[TextDraw]: invalid player for hide");return this}showAll(){if(this.id===-1)return _.beforeCreateWarn("show"),this;if(!this.sourceInfo.player)return _.__inject__TextDrawShowForAll(this.id),this;throw new Error("[TextDraw]: player's textdraw should not be show for all.")}hideAll(){if(this.id===-1)return _.beforeCreateWarn("hideAll"),this;if(!this.sourceInfo.player)return _.__inject__TextDrawHideForAll(this.id),this;throw new Error("[TextDraw]: player's textdraw should not be hide for all.")}isValid(){if(A.skip&&this.id!==-1)return!0;const t=this.sourceInfo.player;return t?_.__inject__IsValidPlayerTextDraw(t.id,this.id):_.__inject__IsValidTextDraw(this.id)}isVisibleForPlayer(t){if(this.id===-1)return!1;const{player:a}=this.sourceInfo;return a?_.__inject__IsPlayerTextDrawVisible(a.id,this.id):t?_.__inject__IsTextDrawVisibleForPlayer(t.id,this.id):!1}getString(){if(this.id===-1)return this.sourceInfo.text;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetString(t.id,this.id).str:_.__inject__TextDrawGetString(this.id).str}setPos(t,a){if(this.id===-1)return _.beforeCreateWarn("set position"),this;const i=this.sourceInfo.player;return i?_.__inject__PlayerTextDrawSetPos(i.id,this.id,t,a):_.__inject__TextDrawSetPos(this.id,t,a),this}getLetterSize(){if(this.id===-1)return _.beforeCreateWarn("get letter size");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetLetterSize(t.id,this.id):_.__inject__TextDrawGetLetterSize(this.id)}getTextSize(){if(this.id===-1)return _.beforeCreateWarn("get text size");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetTextSize(t.id,this.id):_.__inject__TextDrawGetTextSize(this.id)}getPos(){if(this.id===-1)return _.beforeCreateWarn("get position");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPos(t.id,this.id):_.__inject__TextDrawGetPos(this.id)}getColor(){if(this.id===-1)return _.beforeCreateWarn("get color");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetColor(t.id,this.id):_.__inject__TextDrawGetColor(this.id)}getBoxColor(){if(this.id===-1)return _.beforeCreateWarn("get box color");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetBoxColor(t.id,this.id):_.__inject__TextDrawGetBoxColor(this.id)}getBackgroundColor(){if(this.id===-1)return _.beforeCreateWarn("get bg color");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetBackgroundColor(t.id,this.id):_.__inject__TextDrawGetBackgroundColor(this.id)}getShadow(){if(this.id===-1)return _.beforeCreateWarn("get shadow");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetShadow(t.id,this.id):_.__inject__TextDrawGetShadow(this.id)}getOutline(){if(this.id===-1)return _.beforeCreateWarn("get outline");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetOutline(t.id,this.id):_.__inject__TextDrawGetOutline(this.id)}getFont(){if(this.id===-1)return _.beforeCreateWarn("get font");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetFont(t.id,this.id):_.__inject__TextDrawGetFont(this.id)}isBox(){if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawIsBox(t.id,this.id):_.__inject__TextDrawIsBox(this.id)}isProportional(){if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawIsProportional(t.id,this.id):_.__inject__TextDrawIsProportional(this.id)}isSelectable(){if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawIsSelectable(t.id,this.id):_.__inject__TextDrawIsSelectable(this.id)}getAlignment(){if(this.id===-1)return _.beforeCreateWarn("get alignment");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetAlignment(t.id,this.id):_.__inject__TextDrawGetAlignment(this.id)}getPreviewModel(){if(this.id===-1)return _.beforeCreateWarn("get preview model");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPreviewModel(t.id,this.id):_.__inject__TextDrawGetPreviewModel(this.id)}getPreviewRot(){if(this.id===-1)return _.beforeCreateWarn("get preview rotation");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPreviewRot(t.id,this.id):_.__inject__TextDrawGetPreviewRot(this.id)}getPreviewVehColors(){if(this.id===-1)return _.beforeCreateWarn("get preview vel colors");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPreviewVehicleColors(t.id,this.id):_.__inject__TextDrawGetPreviewVehicleColors(this.id)}isGlobal(){return!!this.sourceInfo.player}static getInstance(t,a){return a?Te.get(t):De.get(t)}static getInstances(t){return t?[...Te.values()]:[...De.values()]}static __inject__TextDrawCreate=xd;static __inject__CreatePlayerTextDraw=Dc;static __inject__TextDrawDestroy=kd;static __inject__PlayerTextDrawDestroy=vc;static __inject__TextDrawFont=Yd;static __inject__PlayerTextDrawFont=kc;static __inject__TextDrawColor=Ud;static __inject__PlayerTextDrawColor=bc;static __inject__TextDrawBoxColor=jd;static __inject__PlayerTextDrawBoxColor=Gc;static __inject__TextDrawBackgroundColor=Xd;static __inject__PlayerTextDrawBackgroundColor=xc;static __inject__TextDrawAlignment=Hd;static __inject__PlayerTextDrawAlignment=Lc;static __inject__TextDrawLetterSize=Md;static __inject__PlayerTextDrawLetterSize=wc;static __inject__TextDrawSetOutline=Zd;static __inject__PlayerTextDrawSetOutline=Bc;static __inject__TextDrawSetPreviewModel=ac;static __inject__PlayerTextDrawSetPreviewModel=jc;static __inject__TextDrawSetPreviewRot=ic;static __inject__PlayerTextDrawSetPreviewRot=Kc;static __inject__TextDrawSetPreviewVehicleColors=nc;static __inject__PlayerTextDrawSetPreviewVehicleColors=Zc;static __inject__TextDrawSetProportional=zd;static __inject__PlayerTextDrawSetProportional=Mc;static __inject__TextDrawSetSelectable=$d;static __inject__PlayerTextDrawSetSelectable=Vc;static __inject__TextDrawSetShadow=Kd;static __inject__PlayerTextDrawSetShadow=Fc;static __inject__PlayerTextDrawSetString=Wc;static __inject__TextDrawSetStringForPlayer=Bd;static __inject__TextDrawSetString=tc;static __inject__TextDrawTextSize=Vd;static __inject__PlayerTextDrawTextSize=Rc;static __inject__PlayerTextDrawUseBox=Oc;static __inject__TextDrawUseBox=Wd;static __inject__PlayerTextDrawShow=Hc;static __inject__TextDrawShowForPlayer=Jd;static __inject__PlayerTextDrawHide=Uc;static __inject__TextDrawHideForPlayer=Qd;static __inject__TextDrawShowForAll=qd;static __inject__TextDrawHideForAll=ec;static __inject__IsValidPlayerTextDraw=lc;static __inject__IsValidTextDraw=fd;static __inject__IsPlayerTextDrawVisible=oc;static __inject__IsTextDrawVisibleForPlayer=gd;static __inject__PlayerTextDrawGetString=dc;static __inject__TextDrawGetString=Pd;static __inject__PlayerTextDrawSetPos=cc;static __inject__TextDrawSetPos=Sd;static __inject__PlayerTextDrawGetLetterSize=_c;static __inject__TextDrawGetLetterSize=yd;static __inject__PlayerTextDrawGetTextSize=hc;static __inject__TextDrawGetTextSize=Id;static __inject__PlayerTextDrawGetPos=uc;static __inject__TextDrawGetPos=Ed;static __inject__PlayerTextDrawGetColor=mc;static __inject__TextDrawGetColor=Ad;static __inject__PlayerTextDrawGetBoxColor=pc;static __inject__TextDrawGetBoxColor=Cd;static __inject__PlayerTextDrawGetBackgroundColor=fc;static __inject__TextDrawGetBackgroundColor=Nd;static __inject__PlayerTextDrawGetShadow=gc;static __inject__TextDrawGetShadow=Td;static __inject__PlayerTextDrawGetOutline=Pc;static __inject__TextDrawGetOutline=Dd;static __inject__PlayerTextDrawGetFont=Sc;static __inject__TextDrawGetFont=vd;static __inject__PlayerTextDrawIsBox=yc;static __inject__TextDrawIsBox=wd;static __inject__PlayerTextDrawIsProportional=Ic;static __inject__TextDrawIsProportional=Rd;static __inject__PlayerTextDrawIsSelectable=Ec;static __inject__TextDrawIsSelectable=Ld;static __inject__PlayerTextDrawGetAlignment=Ac;static __inject__TextDrawGetAlignment=bd;static __inject__PlayerTextDrawGetPreviewModel=Cc;static __inject__TextDrawGetPreviewModel=Od;static __inject__PlayerTextDrawGetPreviewRot=Nc;static __inject__TextDrawGetPreviewRot=Gd;static __inject__TextDrawGetPreviewVehicleColors=Fd;static __inject__PlayerTextDrawGetPreviewVehicleColors=Tc}L.onExit(({next:e})=>(_.getInstances(!0).forEach(t=>t.destroy()),_.getInstances(!1).forEach(t=>t.destroy()),Te.clear(),De.clear(),e()));const[fg]=h({name:"OnPlayerClickTextDraw",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===D.TEXT_DRAW?t:_.getInstance(t,!0)}}}),[gg]=h({name:"OnPlayerClickPlayerTextDraw",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===D.TEXT_DRAW?t:_.getInstance(t,!1)}}}),Pg=Object.freeze({onPlayerClickGlobal:fg,onPlayerClickPlayer:gg});function Sg(e,t){return(e&t)===t}function yg(e,t,a){return(e&a)===a&&(t&a)!==a}function Ig(e,t){return!!(e&t)}function Eg(e,t,a){return(e&a)!==a&&(t&a)===a}function Ag(e){const t=new Set,a=e.prototype,i=Object.getOwnPropertyNames(a).filter(r=>typeof a[r]=="function"&&r!=="constructor").reduce((r,s)=>(r[s]=a[s],r),{});function n(r,s){if(t.has(r))throw new Error(`Method '${String(r)}' of class '${e.name}' has already been hooked. Each method can only be hooked once per defineHooks call. `);if(typeof Reflect.get(a,r)!="function")throw new Error(`Invalid method: ${String(r)}`);return Reflect.set(a,r,s),t.add(r),s}return[i,n]}export{dt as ArtworkEnum,At as BodyPartsEnum,Ct as BoneIdsEnum,bt as BulletHitTypesEnum,Se as CameraCutStylesEnum,Et as CameraModesEnum,Dt as CarModTypeEnum,ct as ClickSourcesEnum,ht as ConnectionStatusEnum,je as DamageDeathReasonEnum,R as Dialog,Ue as DialogStylesEnum,he as Dynamic3DTextLabel,Df as Dynamic3DTextLabelEvent,ee as DynamicActor,Ef as DynamicActorEvent,G as DynamicArea,Gf as DynamicAreaEvent,_f as DynamicCheckPointEvent,z as DynamicCheckpoint,_e as DynamicMapIcon,Jp as DynamicMapIconEvent,B as DynamicObject,Zp as DynamicObjectEvent,k as DynamicPickup,nf as DynamicPickupEvent,$ as DynamicRaceCP,Pf as DynamicRaceCPEvent,j as E_STREAMER,_t as EditResponseTypesEnum,yt as FightingStylesEnum,Nt as ForceSyncEnum,L as GameMode,rg as GameText,b as GangZone,pg as GangZoneEvent,I as I18n,D as InvalidEnum,ut as KeysEnum,V as LimitsEnum,ke as MapIconStyles,It as MapIconStylesEnum,mt as MarkerModesEnum,Bt as MaterialTextAlign,Ke as MaterialTextSizes,fe as Menu,og as MenuEvent,ft as NPCEntityCheckEnum,Ge as NPCMoveSpeedEnum,Oe as NPCMoveTypeEnum,pt as NPCPlaybackEnum,H as NPCRecordStatusEnum,ng as NetStats,N as Npc,ig as NpcEvent,Pt as ObjectMaterialAlignmentEnum,gt as ObjectMaterialTextSizeEnum,m as Player,$e as PlayerEvent,ye as PlayerStateEnum,Gt as RecordTypesEnum,St as SelectObjectTypesEnum,We as SpecialActionsEnum,Fe as SpectateModesEnum,P as Streamer,Ft as StreamerAreaTypes,v as StreamerDistances,S as StreamerItemTypes,Be as StreamerMiscellaneous,xe as StreamerObjectTypes,_ as TextDraw,Tt as TextDrawAlignEnum,Pg as TextDrawEvent,Ie as TextDrawFontsEnum,C as Vehicle,Fp as VehicleEvent,wt as VehicleModelInfoEnum,vt as VehicleParamsEnum,Rt as WeaponEnum,Lt as WeaponSkillsEnum,Ot as WeaponStatesEnum,$t as animateLib,h as defineEvent,Ag as defineHooks,rm as getAnimateDurationByLibName,Sg as isHolding,yg as isPressed,Ig as isPressing,Eg as isReleased,Ze as isValidAnimateLib,Xe as isValidAnimateName,E as rgba,Aa as useTrigger,Ca as withTriggerOptions};
1
+ import gi from"node:util";import Pi from"iconv-lite";function ct(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null?Object.prototype.toString.call(e)==="[object Object]":!1}function Si(e,t){const i={},a=Object.keys(e);for(let n=0;n<a.length;n++){const r=a[n],s=e[r];i[t(s,r,e)]=s}return i}function Ve(e){return e==="__proto__"}function Ee(e,t){const i=Object.keys(t);for(let a=0;a<i.length;a++){const n=i[a];if(Ve(n))continue;const r=t[n],s=e[n];Array.isArray(r)?Array.isArray(s)?e[n]=Ee(s,r):e[n]=Ee([],r):ct(r)?ct(s)?e[n]=Ee(s,r):e[n]=Ee({},r):(s===void 0||r!==void 0)&&(e[n]=r)}return e}function yi(e,t){const i={...e};for(let a=0;a<t.length;a++){const n=t[a];delete i[n]}return i}const Ii=new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+","gu");function Ei(e){return Array.from(e.match(Ii)??[])}function Xe(e){return Ei(e).map(i=>i.toLowerCase()).join("_")}function Ai(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}function Ci(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function Ni(e){const t=[],i=e.length;if(i===0)return t;let a=0,n="",r="",s=!1;for(e.charCodeAt(0)===46&&(t.push(""),a++);a<i;){const l=e[a];r?l==="\\"&&a+1<i?(a++,n+=e[a]):l===r?r="":n+=l:s?l==='"'||l==="'"?r=l:l==="]"?(s=!1,t.push(n),n=""):n+=l:l==="["?(s=!0,n&&(t.push(n),n="")):l==="."?n&&(t.push(n),n=""):n+=l,a++}return n&&t.push(n),t}function Ye(e,t,i){if(e==null)return i;switch(typeof t){case"string":{if(Ve(t))return i;const a=e[t];return a===void 0?Ai(t)?Ye(e,Ni(t),i):i:a}case"number":case"symbol":{typeof t=="number"&&(t=Ci(t));const a=e[t];return a===void 0?i:a}default:{if(Array.isArray(t))return Ti(e,t,i);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),Ve(t))return i;const a=e[t];return a===void 0?i:a}}}function Ti(e,t,i){if(t.length===0)return i;let a=e;for(let n=0;n<t.length;n++){if(a==null||Ve(t[n]))return i;a=a[t[n]]}return a===void 0?i:a}const{encode:Di,decode:vi,encodingExists:wi}=Pi;function Ri(e){return e instanceof Buffer}class I{constructor(t,i){this.defaultLocale=t,this.locales=i,this.defaultLocale=Xe(t),this.locales=I.snakeLocaleKeys(i)}addLocales=t=>{Ee(this.locales,I.snakeLocaleKeys(t))};removeLocales=(...t)=>{this.locales=yi(this.locales,t)};$t=(t,i,a=this.defaultLocale)=>{const n=this.locales[Xe(a)],r=Ye(this.locales[this.defaultLocale],t),s=Ye(n,t,r);if(s===void 0)throw new Error(`[i18n]: cannot find ${a}["${t}"]`);if(typeof s!="string")return JSON.stringify(s);let l=s;return i&&i.length&&(l=gi.format(l,...i)),l};static isValidate(t){if(!wi(t))throw new Error(`[i18n]: unknown charset ${t}`)}static encodeToBuf(t,i){return I.isValidate(i),[...Di(t,i),0]}static decodeFromBuf(t,i="utf8"){I.isValidate(i);const a=Ri(t)?t:Buffer.from(I.getValidStr(t));return vi(a,i)}static getValidStr(t){return t.indexOf(0)===-1?t:t.slice(0,t.indexOf(0))}static snakeLocaleKeys(t){return Si(t,(i,a)=>Xe(a))}static convertSpecialChar(t){const i={\u00E0:"\x97",\u00E1:"\x98",\u00E2:"\x99",\u00E4:"\x9A",\u00C0:"\x80",\u00C1:"\x81",\u00C2:"\x82",\u00C4:"\x83",\u00E8:"\x9D",\u00E9:"\x9E",\u00EA:"\x9F",\u00EB:"\xA0",\u00C8:"\x86",\u00C9:"\x87",\u00CA:"\x88",\u00CB:"\x89",\u00EC:"\xA1",\u00ED:"\xA2",\u00EE:"\xA3",\u00EF:"\xA4",\u00CC:"\x8A",\u00CD:"\x8B",\u00CE:"\x8C",\u00CF:"\x8D",\u00F2:"\xA5",\u00F3:"\xA6",\u00F4:"\xA7",\u00F6:"\xA8",\u00D2:"\x8E",\u00D3:"\x8F",\u00D4:"\x90",\u00D6:"\x91",\u00F9:"\xA9",\u00FA:"\xAA",\u00FB:"\xAB",\u00FC:"\xAC",\u00D9:"\x92",\u00DA:"\x93",\u00DB:"\x94",\u00DC:"\x95",\u00F1:"\xAE",\u00D1:"\xAD","\xA1":"@","\xBF":"\xAF","`":"\xB1"};return t.split("").map(a=>a in i?i[a]:a).join("")}}var _t=(e=>(e[e.DOWNLOAD_REQUEST_EMPTY=0]="DOWNLOAD_REQUEST_EMPTY",e[e.DOWNLOAD_REQUEST_MODEL_FILE=1]="DOWNLOAD_REQUEST_MODEL_FILE",e[e.DOWNLOAD_REQUEST_TEXTURE_FILE=2]="DOWNLOAD_REQUEST_TEXTURE_FILE",e))(_t||{}),ht=(e=>(e[e.SCOREBOARD=0]="SCOREBOARD",e))(ht||{}),ze=(e=>(e[e.MSGBOX=0]="MSGBOX",e[e.INPUT=1]="INPUT",e[e.LIST=2]="LIST",e[e.PASSWORD=3]="PASSWORD",e[e.TABLIST=4]="TABLIST",e[e.TABLIST_HEADERS=5]="TABLIST_HEADERS",e))(ze||{}),ut=(e=>(e[e.CANCEL=0]="CANCEL",e[e.FINAL=1]="FINAL",e[e.UPDATE=2]="UPDATE",e))(ut||{}),mt=(e=>(e[e.NO_ACTION=0]="NO_ACTION",e[e.DISCONNECT_ASAP=1]="DISCONNECT_ASAP",e[e.DISCONNECT_ASAP_SILENTLY=2]="DISCONNECT_ASAP_SILENTLY",e[e.DISCONNECT_ON_NO_ACK=3]="DISCONNECT_ON_NO_ACK",e[e.REQUESTED_CONNECTION=4]="REQUESTED_CONNECTION",e[e.HANDLING_CONNECTION_REQUEST=5]="HANDLING_CONNECTION_REQUEST",e[e.UNVERIFIED_SENDER=6]="UNVERIFIED_SENDER",e[e.SET_ENCRYPTION_ON_MULTIPLE_16_BYTE_PACKET=7]="SET_ENCRYPTION_ON_MULTIPLE_16_BYTE_PACKET",e[e.CONNECTED=8]="CONNECTED",e))(mt||{}),N=(e=>(e[e.NO_TEAM=255]="NO_TEAM",e[e.PLAYER_ID=65535]="PLAYER_ID",e[e.NPC_ID=-1]="NPC_ID",e[e.VEHICLE_ID=65535]="VEHICLE_ID",e[e.ACTOR_ID=65535]="ACTOR_ID",e[e.OBJECT_ID=65535]="OBJECT_ID",e[e.MENU=-1]="MENU",e[e.TEXT_DRAW=65535]="TEXT_DRAW",e[e.PLAYER_TEXT_DRAW=65535]="PLAYER_TEXT_DRAW",e[e.GANG_ZONE=-1]="GANG_ZONE",e[e._3DTEXT_ID=65535]="_3DTEXT_ID",e[e.PLAYER_3DTEXT_ID=65535]="PLAYER_3DTEXT_ID",e))(N||{}),pt=(e=>(e[e.NONE=0]="NONE",e[e.ACTION=1]="ACTION",e[e.CROUCH=2]="CROUCH",e[e.FIRE=4]="FIRE",e[e.SPRINT=8]="SPRINT",e[e.SECONDARY_ATTACK=16]="SECONDARY_ATTACK",e[e.JUMP=32]="JUMP",e[e.LOOK_RIGHT=64]="LOOK_RIGHT",e[e.HANDBRAKE=128]="HANDBRAKE",e[e.LOOK_LEFT=256]="LOOK_LEFT",e[e.SUBMISSION=512]="SUBMISSION",e[e.LOOK_BEHIND=512]="LOOK_BEHIND",e[e.WALK=1024]="WALK",e[e.ANALOG_UP=2048]="ANALOG_UP",e[e.ANALOG_DOWN=4096]="ANALOG_DOWN",e[e.ANALOG_LEFT=8192]="ANALOG_LEFT",e[e.ANALOG_RIGHT=16384]="ANALOG_RIGHT",e[e.YES=65536]="YES",e[e.NO=131072]="NO",e[e.CTRL_BACK=262144]="CTRL_BACK",e[e.KEY_UP=-128]="KEY_UP",e[e.KEY_DOWN=128]="KEY_DOWN",e[e.KEY_LEFT=-128]="KEY_LEFT",e[e.KEY_RIGHT=128]="KEY_RIGHT",e))(pt||{}),F=(e=>(e[e.MAX_PLAYER_NAME=24]="MAX_PLAYER_NAME",e[e.MAX_PLAYERS=1e3]="MAX_PLAYERS",e[e.MAX_VEHICLES=2e3]="MAX_VEHICLES",e[e.MAX_ACTORS=1e3]="MAX_ACTORS",e[e.MAX_OBJECTS=1e3]="MAX_OBJECTS",e[e.MAX_GANG_ZONES=1024]="MAX_GANG_ZONES",e[e.MAX_TEXT_DRAWS=2048]="MAX_TEXT_DRAWS",e[e.MAX_PLAYER_TEXT_DRAWS=256]="MAX_PLAYER_TEXT_DRAWS",e[e.MAX_MENUS=128]="MAX_MENUS",e[e.MAX_MENU_ROW=12]="MAX_MENU_ROW",e[e.MAX_MENU_COL=2]="MAX_MENU_COL",e[e.MAX_3DTEXT_GLOBAL=1024]="MAX_3DTEXT_GLOBAL",e[e.MAX_3DTEXT_PLAYER=1024]="MAX_3DTEXT_PLAYER",e[e.MAX_PICKUPS=4096]="MAX_PICKUPS",e[e.MAX_PLAYER_ATTACHED_OBJECTS=10]="MAX_PLAYER_ATTACHED_OBJECTS",e[e.MAX_CHATBUBBLE_LENGTH=144]="MAX_CHATBUBBLE_LENGTH",e[e.NPC_MAX_NODES=64]="NPC_MAX_NODES",e[e.MAX_NPCS=1e3]="MAX_NPCS",e))(F||{}),ft=(e=>(e[e.OFF=0]="OFF",e[e.GLOBAL=1]="GLOBAL",e[e.STREAMED=2]="STREAMED",e))(ft||{}),gt=(e=>(e[e.NONE=1]="NONE",e[e.DRIVER=2]="DRIVER",e[e.ONFOOT=3]="ONFOOT",e))(gt||{}),Pt=(e=>(e[e.NONE=0]="NONE",e[e.START=1]="START",e[e.PAUSE=2]="PAUSE",e))(Pt||{}),He=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.WALK=1]="WALK",e[e.JOG=2]="JOG",e[e.SPRINT=3]="SPRINT",e[e.DRIVE=4]="DRIVE",e[e.AUTO=5]="AUTO",e))(He||{}),Ae=(e=>(e[e.NONE=0]="NONE",e[e.PLAYER=1]="PLAYER",e[e.NPC=2]="NPC",e[e.ACTOR=4]="ACTOR",e[e.VEHICLE=8]="VEHICLE",e[e.OBJECT=16]="OBJECT",e[e.POBJECT_ORIG=32]="POBJECT_ORIG",e[e.POBJECT_TARG=64]="POBJECT_TARG",e[e.MAP=128]="MAP",e[e.ALL=255]="ALL",e))(Ae||{}),pe=(e=>(e[e.AUTO=-1]="AUTO",e[e.WALK=.1552086]="WALK",e[e.JOG=.56444]="JOG",e[e.SPRINT=.926784]="SPRINT",e))(pe||{}),St=(e=>(e[e._32x32=10]="_32x32",e[e._64x32=20]="_64x32",e[e._64x64=30]="_64x64",e[e._128x32=40]="_128x32",e[e._128x64=50]="_128x64",e[e._128x128=60]="_128x128",e[e._256x32=70]="_256x32",e[e._256x64=80]="_256x64",e[e._256x128=90]="_256x128",e[e._256x256=100]="_256x256",e[e._512x64=110]="_512x64",e[e._512x128=120]="_512x128",e[e._512x256=130]="_512x256",e[e._512x512=140]="_512x512",e))(St||{}),yt=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(yt||{}),It=(e=>(e[e.GLOBAL_OBJECT=1]="GLOBAL_OBJECT",e[e.PLAYER_OBJECT=2]="PLAYER_OBJECT",e))(It||{}),Et=(e=>(e[e.NORMAL=0]="NORMAL",e[e.BOXING=1]="BOXING",e[e.KUNGFU=2]="KUNGFU",e[e.KNEEHEAD=3]="KNEEHEAD",e[e.GRABKICK=4]="GRABKICK",e[e.ELBOW=5]="ELBOW",e))(Et||{}),At=(e=>(e[e.LOCAL=0]="LOCAL",e[e.GLOBAL=1]="GLOBAL",e[e.LOCAL_CHECKPOINT=2]="LOCAL_CHECKPOINT",e[e.GLOBAL_CHECKPOINT=3]="GLOBAL_CHECKPOINT",e))(At||{}),Ce=(e=>(e[e.MOVE=1]="MOVE",e[e.CUT=2]="CUT",e))(Ce||{}),Ct=(e=>(e[e.BEHINDCAR=3]="BEHINDCAR",e[e.FOLLOWPED=4]="FOLLOWPED",e[e.SNIPER=7]="SNIPER",e[e.ROCKETLAUNCHER=8]="ROCKETLAUNCHER",e[e.FIXED=15]="FIXED",e[e._1STPERSON=16]="_1STPERSON",e[e.CAM_ON_A_STRING=18]="CAM_ON_A_STRING",e[e.BEHINDBOAT=22]="BEHINDBOAT",e[e.CAMERA=46]="CAMERA",e[e.ROCKETLAUNCHER_HS=51]="ROCKETLAUNCHER_HS",e[e.AIMWEAPON=53]="AIMWEAPON",e[e.AIMWEAPON_FROMCAR=55]="AIMWEAPON_FROMCAR",e[e.DW_HELI_CHASE=56]="DW_HELI_CHASE",e[e.DW_CAM_MAN=57]="DW_CAM_MAN",e[e.DW_BIRDY=58]="DW_BIRDY",e[e.DW_PLANE_SPOTTER=59]="DW_PLANE_SPOTTER",e[e.DW_PLANECAM1=62]="DW_PLANECAM1",e[e.DW_PLANECAM2=63]="DW_PLANECAM2",e[e.DW_PLANECAM3=64]="DW_PLANECAM3",e))(Ct||{}),Ue=(e=>(e[e.NORMAL=1]="NORMAL",e[e.FIXED=2]="FIXED",e[e.SIDE=3]="SIDE",e))(Ue||{}),Ne=(e=>(e[e.NONE=0]="NONE",e[e.ONFOOT=1]="ONFOOT",e[e.DRIVER=2]="DRIVER",e[e.PASSENGER=3]="PASSENGER",e[e.EXIT_VEHICLE=4]="EXIT_VEHICLE",e[e.ENTER_VEHICLE_DRIVER=5]="ENTER_VEHICLE_DRIVER",e[e.ENTER_VEHICLE_PASSENGER=6]="ENTER_VEHICLE_PASSENGER",e[e.WASTED=7]="WASTED",e[e.SPAWNED=8]="SPAWNED",e[e.SPECTATING=9]="SPECTATING",e))(Ne||{}),Nt=(e=>(e[e.TORSO=3]="TORSO",e[e.GROIN=4]="GROIN",e[e.LEFT_ARM=5]="LEFT_ARM",e[e.RIGHT_ARM=6]="RIGHT_ARM",e[e.LEFT_LEG=7]="LEFT_LEG",e[e.RIGHT_LEG=8]="RIGHT_LEG",e[e.HEAD=9]="HEAD",e))(Nt||{}),Tt=(e=>(e[e.Spine=1]="Spine",e[e.Head=2]="Head",e[e.LeftUpperArm=3]="LeftUpperArm",e[e.RightUpperArm=4]="RightUpperArm",e[e.LeftHand=5]="LeftHand",e[e.RightHand=6]="RightHand",e[e.LeftThigh=7]="LeftThigh",e[e.RightThigh=8]="RightThigh",e[e.LeftFoot=9]="LeftFoot",e[e.RightFoot=10]="RightFoot",e[e.RightCalf=11]="RightCalf",e[e.LeftCalf=12]="LeftCalf",e[e.LeftForearm=13]="LeftForearm",e[e.RightForearm=14]="RightForearm",e[e.LeftClavicle=15]="LeftClavicle",e[e.RightClavicle=16]="RightClavicle",e[e.Neck=17]="Neck",e[e.Jaw=18]="Jaw",e))(Tt||{}),Dt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.ALL=1]="ALL",e[e.OTHER=2]="OTHER",e))(Dt||{}),$e=(e=>(e[e.NONE=0]="NONE",e[e.DUCK=1]="DUCK",e[e.USEJETPACK=2]="USEJETPACK",e[e.ENTER_VEHICLE=3]="ENTER_VEHICLE",e[e.EXIT_VEHICLE=4]="EXIT_VEHICLE",e[e.DANCE1=5]="DANCE1",e[e.DANCE2=6]="DANCE2",e[e.DANCE3=7]="DANCE3",e[e.DANCE4=8]="DANCE4",e[e.HANDSUP=10]="HANDSUP",e[e.USECELLPHONE=11]="USECELLPHONE",e[e.SITTING=12]="SITTING",e[e.STOPUSECELLPHONE=13]="STOPUSECELLPHONE",e[e.DRINK_BEER=20]="DRINK_BEER",e[e.SMOKE_CIGGY=21]="SMOKE_CIGGY",e[e.DRINK_WINE=22]="DRINK_WINE",e[e.DRINK_SPRUNK=23]="DRINK_SPRUNK",e[e.CUFFED=24]="CUFFED",e[e.CARRY=25]="CARRY",e[e.PISSING=68]="PISSING",e))($e||{}),Te=(e=>(e[e.FONT_0=0]="FONT_0",e[e.FONT_1=1]="FONT_1",e[e.FONT_2=2]="FONT_2",e[e.FONT_3=3]="FONT_3",e[e.SPRITE_DRAW=4]="SPRITE_DRAW",e[e.MODEL_PREVIEW=5]="MODEL_PREVIEW",e[e.BANK=0]="BANK",e[e.STANDARD=1]="STANDARD",e[e.SPACEAGE=2]="SPACEAGE",e[e.HEADING=3]="HEADING",e[e.BECKETT_REGULAR=0]="BECKETT_REGULAR",e[e.AHARONI_BOLD=1]="AHARONI_BOLD",e[e.BANK_GOTHIC=2]="BANK_GOTHIC",e[e.PRICEDOWN=3]="PRICEDOWN",e[e.SPRITE=4]="SPRITE",e[e.PREVIEW=5]="PREVIEW",e))(Te||{}),vt=(e=>(e[e.LEFT=1]="LEFT",e[e.CENTER=2]="CENTER",e[e.RIGHT=3]="RIGHT",e))(vt||{}),wt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=-1]="NONE",e[e.SPOILER=0]="SPOILER",e[e.HOOD=1]="HOOD",e[e.ROOF=2]="ROOF",e[e.SIDESKIRT=3]="SIDESKIRT",e[e.LAMPS=4]="LAMPS",e[e.NITRO=5]="NITRO",e[e.EXHAUST=6]="EXHAUST",e[e.WHEELS=7]="WHEELS",e[e.STEREO=8]="STEREO",e[e.HYDRAULICS=9]="HYDRAULICS",e[e.FRONT_BUMPER=10]="FRONT_BUMPER",e[e.REAR_BUMPER=11]="REAR_BUMPER",e[e.VENT_RIGHT=12]="VENT_RIGHT",e[e.VENT_LEFT=13]="VENT_LEFT",e[e.FRONT_BULLBAR=14]="FRONT_BULLBAR",e[e.REAR_BULLBAR=15]="REAR_BULLBAR",e))(wt||{}),Rt=(e=>(e[e.UNSET=-1]="UNSET",e[e.OFF=0]="OFF",e[e.ON=1]="ON",e))(Rt||{}),Lt=(e=>(e[e.SIZE=1]="SIZE",e[e.FRONTSEAT=2]="FRONTSEAT",e[e.REARSEAT=3]="REARSEAT",e[e.PETROLCAP=4]="PETROLCAP",e[e.WHEELSFRONT=5]="WHEELSFRONT",e[e.WHEELSREAR=6]="WHEELSREAR",e[e.WHEELSMID=7]="WHEELSMID",e[e.FRONT_BUMPER_Z=8]="FRONT_BUMPER_Z",e[e.REAR_BUMPER_Z=9]="REAR_BUMPER_Z",e))(Lt||{}),bt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.REASON_VEHICLE=49]="REASON_VEHICLE",e[e.REASON_DROWN=53]="REASON_DROWN",e[e.REASON_COLLISION=54]="REASON_COLLISION",e[e.REASON_SPLAT=54]="REASON_SPLAT",e[e.REASON_CONNECT=200]="REASON_CONNECT",e[e.REASON_DISCONNECT=200]="REASON_DISCONNECT",e[e.REASON_SUICIDE=255]="REASON_SUICIDE",e[e.FIST=0]="FIST",e[e.BRASSKNUCKLE=1]="BRASSKNUCKLE",e[e.GOLFCLUB=2]="GOLFCLUB",e[e.NIGHTSTICK=3]="NIGHTSTICK",e[e.KNIFE=4]="KNIFE",e[e.BAT=5]="BAT",e[e.SHOVEL=6]="SHOVEL",e[e.POOLSTICK=7]="POOLSTICK",e[e.KATANA=8]="KATANA",e[e.CHAINSAW=9]="CHAINSAW",e[e.DILDO=10]="DILDO",e[e.DILDO2=11]="DILDO2",e[e.VIBRATOR=12]="VIBRATOR",e[e.VIBRATOR2=13]="VIBRATOR2",e[e.FLOWER=14]="FLOWER",e[e.CANE=15]="CANE",e[e.GRENADE=16]="GRENADE",e[e.TEARGAS=17]="TEARGAS",e[e.MOLTOV=18]="MOLTOV",e[e.COLT45=22]="COLT45",e[e.SILENCED=23]="SILENCED",e[e.DEAGLE=24]="DEAGLE",e[e.SHOTGUN=25]="SHOTGUN",e[e.SAWEDOFF=26]="SAWEDOFF",e[e.SHOTGSPA=27]="SHOTGSPA",e[e.UZI=28]="UZI",e[e.MP5=29]="MP5",e[e.AK47=30]="AK47",e[e.M4=31]="M4",e[e.TEC9=32]="TEC9",e[e.RIFLE=33]="RIFLE",e[e.SNIPER=34]="SNIPER",e[e.ROCKETLAUNCHER=35]="ROCKETLAUNCHER",e[e.HEATSEEKER=36]="HEATSEEKER",e[e.FLAMETHROWER=37]="FLAMETHROWER",e[e.MINIGUN=38]="MINIGUN",e[e.SATCHEL=39]="SATCHEL",e[e.BOMB=40]="BOMB",e[e.SPRAYCAN=41]="SPRAYCAN",e[e.FIREEXTINGUISHER=42]="FIREEXTINGUISHER",e[e.CAMERA=43]="CAMERA",e[e.NIGHT_VISION_GOGGLES=44]="NIGHT_VISION_GOGGLES",e[e.THERMAL_GOGGLES=45]="THERMAL_GOGGLES",e[e.PARACHUTE=46]="PARACHUTE",e))(bt||{}),Ot=(e=>(e[e.PISTOL=0]="PISTOL",e[e.PISTOL_SILENCED=1]="PISTOL_SILENCED",e[e.DESERT_EAGLE=2]="DESERT_EAGLE",e[e.SHOTGUN=3]="SHOTGUN",e[e.SAWNOFF_SHOTGUN=4]="SAWNOFF_SHOTGUN",e[e.SPAS12_SHOTGUN=5]="SPAS12_SHOTGUN",e[e.MICRO_UZI=6]="MICRO_UZI",e[e.MP5=7]="MP5",e[e.AK47=8]="AK47",e[e.M4=9]="M4",e[e.SNIPERRIFLE=10]="SNIPERRIFLE",e))(Ot||{}),Gt=(e=>(e[e.NONE=0]="NONE",e[e.PLAYER=1]="PLAYER",e[e.VEHICLE=2]="VEHICLE",e[e.OBJECT=3]="OBJECT",e[e.PLAYER_OBJECT=4]="PLAYER_OBJECT",e))(Gt||{}),Ft=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NO_BULLETS=0]="NO_BULLETS",e[e.LAST_BULLET=1]="LAST_BULLET",e[e.MORE_BULLETS=2]="MORE_BULLETS",e[e.RELOADING=3]="RELOADING",e))(Ft||{}),Je=(e=>(e[e.VEHICLE=49]="VEHICLE",e[e.HELICOPTERBLADES=50]="HELICOPTERBLADES",e[e.EXPLOSION=51]="EXPLOSION",e[e.DROWN=53]="DROWN",e[e.COLLISION=54]="COLLISION",e[e.CONNECT=200]="CONNECT",e[e.DISCONNECT=201]="DISCONNECT",e[e.SUICIDE=255]="SUICIDE",e))(Je||{}),Bt=(e=>(e[e.NONE=0]="NONE",e[e.DRIVER=1]="DRIVER",e[e.ONFOOT=2]="ONFOOT",e))(Bt||{}),xt=(e=>(e[e.CIRCLE=0]="CIRCLE",e[e.CYLINDER=1]="CYLINDER",e[e.SPHERE=2]="SPHERE",e[e.RECTANGLE=3]="RECTANGLE",e[e.CUBOID=4]="CUBOID",e[e.POLYGON=5]="POLYGON",e))(xt||{}),D=(e=>(e[e.OBJECT_SD=300]="OBJECT_SD",e[e.OBJECT_DD=0]="OBJECT_DD",e[e.PICKUP_SD=200]="PICKUP_SD",e[e.CP_SD=200]="CP_SD",e[e.RACE_CP_SD=200]="RACE_CP_SD",e[e.MAP_ICON_SD=200]="MAP_ICON_SD",e[e.TEXT_3D_LABEL_SD=200]="TEXT_3D_LABEL_SD",e[e.ACTOR_SD=200]="ACTOR_SD",e))(D||{}),S=(e=>(e[e.OBJECT=0]="OBJECT",e[e.PICKUP=1]="PICKUP",e[e.CP=2]="CP",e[e.RACE_CP=3]="RACE_CP",e[e.MAP_ICON=4]="MAP_ICON",e[e.TEXT_3D_LABEL=5]="TEXT_3D_LABEL",e[e.AREA=6]="AREA",e[e.ACTOR=7]="ACTOR",e))(S||{}),We=(e=>(e[e.MAX_TYPES=8]="MAX_TYPES",e[e.MAX_AREA_TYPES=5]="MAX_AREA_TYPES",e[e.MAX_OBJECT_TYPES=3]="MAX_OBJECT_TYPES",e[e.INVALID_ID=0]="INVALID_ID",e))(We||{}),je=(e=>(e[e.GLOBAL=0]="GLOBAL",e[e.PLAYER=1]="PLAYER",e[e.DYNAMIC=2]="DYNAMIC",e))(je||{}),W=(e=>(e[e.AREA_ID=0]="AREA_ID",e[e.ATTACHED_OBJECT=1]="ATTACHED_OBJECT",e[e.ATTACHED_PLAYER=2]="ATTACHED_PLAYER",e[e.ATTACHED_VEHICLE=3]="ATTACHED_VEHICLE",e[e.ATTACH_OFFSET_X=4]="ATTACH_OFFSET_X",e[e.ATTACH_OFFSET_Y=5]="ATTACH_OFFSET_Y",e[e.ATTACH_OFFSET_Z=6]="ATTACH_OFFSET_Z",e[e.ATTACH_R_X=7]="ATTACH_R_X",e[e.ATTACH_R_Y=8]="ATTACH_R_Y",e[e.ATTACH_R_Z=9]="ATTACH_R_Z",e[e.ATTACH_X=10]="ATTACH_X",e[e.ATTACH_Y=11]="ATTACH_Y",e[e.ATTACH_Z=12]="ATTACH_Z",e[e.COLOR=13]="COLOR",e[e.DRAW_DISTANCE=14]="DRAW_DISTANCE",e[e.EXTRA_ID=15]="EXTRA_ID",e[e.HEALTH=16]="HEALTH",e[e.INTERIOR_ID=17]="INTERIOR_ID",e[e.INVULNERABLE=18]="INVULNERABLE",e[e.MAX_X=19]="MAX_X",e[e.MAX_Y=20]="MAX_Y",e[e.MAX_Z=21]="MAX_Z",e[e.MIN_X=22]="MIN_X",e[e.MIN_Y=23]="MIN_Y",e[e.MIN_Z=24]="MIN_Z",e[e.MODEL_ID=25]="MODEL_ID",e[e.MOVE_R_X=26]="MOVE_R_X",e[e.MOVE_R_Y=27]="MOVE_R_Y",e[e.MOVE_R_Z=28]="MOVE_R_Z",e[e.MOVE_SPEED=29]="MOVE_SPEED",e[e.MOVE_X=30]="MOVE_X",e[e.MOVE_Y=31]="MOVE_Y",e[e.MOVE_Z=32]="MOVE_Z",e[e.NEXT_X=33]="NEXT_X",e[e.NEXT_Y=34]="NEXT_Y",e[e.NEXT_Z=35]="NEXT_Z",e[e.PLAYER_ID=36]="PLAYER_ID",e[e.PRIORITY=37]="PRIORITY",e[e.ROTATION=38]="ROTATION",e[e.R_X=39]="R_X",e[e.R_Y=40]="R_Y",e[e.R_Z=41]="R_Z",e[e.SIZE=42]="SIZE",e[e.STREAM_DISTANCE=43]="STREAM_DISTANCE",e[e.STYLE=44]="STYLE",e[e.SYNC_ROTATION=45]="SYNC_ROTATION",e[e.TEST_LOS=46]="TEST_LOS",e[e.TYPE=47]="TYPE",e[e.WORLD_ID=48]="WORLD_ID",e[e.X=49]="X",e[e.Y=50]="Y",e[e.Z=51]="Z",e))(W||{}),kt=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(kt||{}),Qe=(e=>(e[e.SIZE_32x32=10]="SIZE_32x32",e[e.SIZE_64x32=20]="SIZE_64x32",e[e.SIZE_64x64=30]="SIZE_64x64",e[e.SIZE_128x32=40]="SIZE_128x32",e[e.SIZE_128x64=50]="SIZE_128x64",e[e.SIZE_128x128=60]="SIZE_128x128",e[e.SIZE_256x32=70]="SIZE_256x32",e[e.SIZE_256x64=80]="SIZE_256x64",e[e.SIZE_256x128=90]="SIZE_256x128",e[e.SIZE_256x256=100]="SIZE_256x256",e[e.SIZE_512x64=110]="SIZE_512x64",e[e.SIZE_512x128=120]="SIZE_512x128",e[e.SIZE_512x256=130]="SIZE_512x256",e[e.SIZE_512x512=140]="SIZE_512x512",e))(Qe||{});const Mt=-1,Li=-1,bi=-1,Oi=-1,Gi=0,Fi=-1e3,Bi=-1e3,xi=-1e3,ki=0,Vt=32,Mi=300,Vi=!0,Ke=1,Hi=e=>samp.callNative("DestroyDynamic3DTextLabel","i",e),Ui=e=>!!samp.callNative("IsValidDynamic3DTextLabel","i",e),Wi=(e,t,i,a,n,r=!0,s=100,l=0,o=-1,d=-1,c=D.ACTOR_SD,h=-1,p=0)=>samp.callNative("CreateDynamicActor","iffffifiiifii",e,t,i,a,n,r,s,l,o,d,c,h,p),ji=e=>samp.callNative("DestroyDynamicActor","i",e),Ki=e=>!!samp.callNative("IsValidDynamicActor","i",e),Zi=(e,t)=>!!samp.callNative("IsDynamicActorStreamedIn","ii",e,t),Xi=e=>samp.callNative("GetDynamicActorVirtualWorld","i",e),Yi=(e,t)=>samp.callNative("SetDynamicActorVirtualWorld","ii",e,t),zi=(e,t,i,a,n,r,s,l,o)=>samp.callNative("ApplyDynamicActorAnimation","issfiiiii",e,t,i,a,n,r,s,l,o),$i=e=>samp.callNative("ClearDynamicActorAnimations","i",e),Ji=e=>{const[t,i]=samp.callNative("GetDynamicActorFacingAngle","iF",e);return{angle:t,ret:i}},Qi=(e,t)=>samp.callNative("SetDynamicActorFacingAngle","if",e,t),qi=e=>{const[t,i,a,n]=samp.callNative("GetDynamicActorPos","iFFF",e);return{x:t,y:i,z:a,ret:n}},ea=(e,t,i,a)=>samp.callNative("SetDynamicActorPos","ifff",e,t,i,a),ta=e=>{const[t,i]=samp.callNative("GetDynamicActorHealth","iF",e);return{health:t,ret:i}},ia=(e,t)=>samp.callNative("SetDynamicActorHealth","if",e,t),aa=(e,t=!0)=>samp.callNative("SetDynamicActorInvulnerable","ii",e,t),na=e=>!!samp.callNative("IsDynamicActorInvulnerable","i",e),ra=e=>samp.callNative("GetPlayerTargetDynamicActor","i",e),sa=e=>samp.callNative("GetPlayerCameraTargetDynActor","i",e),la=e=>{const[t,i,a=0,n=0,r=0,s=0,l=0,o=0,d]=samp.callNative("GetDynamicActorAnimation","iSSFIIIIIii",e,32,32);return{animLib:t,animName:i,fDelta:a,loop:n,lockX:r,lockY:s,freeze:l,time:o,ret:d}},oa=(e,t,i,a=-1,n=-1,r=-1)=>samp.callNative("CreateDynamicCircle","fffiii",e,t,i,a,n,r),da=(e,t,i,a,n,r=-1,s=-1,l=-1)=>samp.callNative("CreateDynamicCylinder","fffffiii",e,t,i,a,n,r,s,l),ca=(e,t,i,a,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicSphere","ffffiii",e,t,i,a,n,r,s),_a=(e,t,i,a,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicRectangle","ffffiii",e,t,i,a,n,r,s),ha=(e,t,i,a,n,r,s=-1,l=-1,o=-1)=>samp.callNative("CreateDynamicCuboid","ffffffiii",e,t,i,a,n,r,s,l,o),ua=(e,t=Number.MIN_VALUE,i=Number.MAX_VALUE,a=-1,n=-1,r=-1)=>samp.callNative("CreateDynamicPolygon","affiiii",e,t,i,e.length,a,n,r),ma=e=>samp.callNative("DestroyDynamicArea","i",e),pa=e=>!!samp.callNative("IsValidDynamicArea","i",e),fa=e=>samp.callNative("GetDynamicAreaType","i",e),ga=e=>{const[t,i]=samp.callNative("GetDynamicPolygonPoints","iAi",e,Ht(e));return{points:t,ret:i}},Ht=e=>samp.callNative("GetDynamicPolygonNumberPoints","i",e),Pa=(e,t,i=!1)=>!!samp.callNative("IsPlayerInDynamicArea","iii",e,t,i),Sa=(e,t=!1)=>!!samp.callNative("IsPlayerInAnyDynamicArea","ii",e,t),ya=(e,t=!1)=>!!samp.callNative("IsAnyPlayerInDynamicArea","ii",e,t),Ia=(e=!1)=>!!samp.callNative("IsAnyPlayerInAnyDynamicArea","i",e),Ea=e=>{const[t,i]=samp.callNative("GetPlayerDynamicAreas","iAi",e,Ut(e));return{areas:t,ret:i}},Ut=e=>samp.callNative("GetPlayerNumberDynamicAreas","i",e),Aa=(e,t,i,a)=>!!samp.callNative("IsPointInDynamicArea","ifff",e,t,i,a),Ca=(e,t,i)=>!!samp.callNative("IsPointInAnyDynamicArea","fff",e,t,i),Na=(e,t,i,a,n,r,s)=>!!samp.callNative("IsLineInDynamicArea","iffffff",e,t,i,a,n,r,s),Ta=(e,t,i,a,n,r)=>!!samp.callNative("IsLineInAnyDynamicArea","ffffff",e,t,i,a,n,r),Da=(e,t,i)=>{const[a,n]=samp.callNative("GetDynamicAreasForPoint","fffAi",e,t,i,Wt(e,t,i));return{areas:a,ret:n}},Wt=(e,t,i)=>samp.callNative("GetNumberDynamicAreasForPoint","fff",e,t,i),va=(e,t,i,a,n,r)=>{const[s,l]=samp.callNative("GetDynamicAreasForLine","ffffffAi",e,t,i,a,n,r,jt(e,t,i,a,n,r));return{areas:s,ret:l}},jt=(e,t,i,a,n,r)=>samp.callNative("GetNumberDynamicAreasForLine","ffffff",e,t,i,a,n,r),wa=(e,t,i=je.DYNAMIC,a=65535,n=0,r=0,s=0)=>samp.callNative("AttachDynamicAreaToObject","iiiifff",e,t,i,a,n,r,s),Ra=(e,t,i=0,a=0,n=0)=>samp.callNative("AttachDynamicAreaToPlayer","iifff",e,t,i,a,n),La=(e,t,i=0,a=0,n=0)=>samp.callNative("AttachDynamicAreaToVehicle","iifff",e,t,i,a,n),ba=(e,t)=>samp.callNative("ToggleDynAreaSpectateMode","ii",e,t),Oa=e=>!!samp.callNative("IsToggleDynAreaSpectateMode","i",e),Ga=(e,t,i,a,n=-1,r=-1,s=-1,l=D.CP_SD,o=-1,d=0)=>samp.callNative("CreateDynamicCP","ffffiiifii",e,t,i,a,n,r,s,l,o,d),Fa=e=>samp.callNative("DestroyDynamicCP","i",e),Kt=e=>!!samp.callNative("IsValidDynamicCP","i",e),Ba=(e,t,i)=>samp.callNative("TogglePlayerDynamicCP","iii",e,t,i),xa=(e,t)=>samp.callNative("TogglePlayerAllDynamicCPs","ii",e,t),ka=(e,t)=>!!samp.callNative("IsPlayerInDynamicCP","ii",e,t),Ma=e=>samp.callNative("GetPlayerVisibleDynamicCP","i",e),Va=(e,t,i)=>{const[a,n]=samp.callNative("Streamer_GetFloatData","iiiF",e,t,i);return{val:a,ret:n}},Ha=(e,t,i,a)=>samp.callNative("Streamer_SetFloatData","iiif",e,t,i,a),Ua=(e,t,i)=>samp.callNative("Streamer_GetIntData","iii",e,t,i),Wa=(e,t,i,a)=>samp.callNative("Streamer_SetIntData","iiii",e,t,i,a),ja=(e,t,i)=>{const[a,n]=samp.callNative("Streamer_GetArrayData","iiiAi",e,t,i,Zt(e,t,i));return{arrayData:a,ret:n}},Ka=(e,t,i,a)=>samp.callNative("Streamer_SetArrayData","iiiai",e,t,i,a,a.length),Za=(e,t,i,a)=>!!samp.callNative("Streamer_IsInArrayData","iiii",e,t,i,a),Xa=(e,t,i,a)=>samp.callNative("Streamer_AppendArrayData","iiii",e,t,i,a),Ya=(e,t,i,a)=>samp.callNative("Streamer_RemoveArrayData","iiii",e,t,i,a),Zt=(e,t,i)=>samp.callNative("Streamer_GetArrayDataLength","iii",e,t,i),za=e=>samp.callNative("Streamer_GetUpperBound","i",e);var Ze=(e=>(e[e.LOCAL=0]="LOCAL",e[e.GLOBAL=1]="GLOBAL",e[e.LOCAL_CHECKPOINT=2]="LOCAL_CHECKPOINT",e[e.GLOBAL_CHECKPOINT=3]="GLOBAL_CHECKPOINT",e))(Ze||{});const $a=(e,t,i,a,n,r=-1,s=-1,l=-1,o=D.MAP_ICON_SD,d=0,c=-1,h=0)=>samp.callNative("CreateDynamicMapIcon","fffiiiiifiii",e,t,i,a,n,r,s,l,o,d,c,h),Ja=e=>samp.callNative("DestroyDynamicMapIcon","i",e),Qa=e=>!!samp.callNative("IsValidDynamicMapIcon","i",e),qa=(e,t,i,a,n,r,s,l=D.OBJECT_SD,o=D.OBJECT_DD,d=[-1],c=[-1],h=[-1],p=[-1],g=0)=>samp.callNative("CreateDynamicObjectEx","iffffffffaaaaiiiii",e,t,i,a,n,r,s,l,o,d,c,h,p,g,d.length,c.length,h.length,p.length),en=(e,t,i,a,n,r=D.PICKUP_SD,s=[-1],l=[-1],o=[-1],d=[-1],c=0)=>samp.callNative("CreateDynamicPickupEx","iiffffaaaaiiiii",e,t,i,a,n,r,s,l,o,d,c,s.length,l.length,o.length,d.length),tn=(e,t,i,a,n=D.CP_SD,r=[-1],s=[-1],l=[-1],o=[-1],d=0)=>samp.callNative("CreateDynamicCPEx","fffffaaaaiiiii",e,t,i,a,n,r,s,l,o,d,r.length,s.length,l.length,o.length),an=(e,t,i,a,n,r,s,l,o=D.RACE_CP_SD,d=[-1],c=[-1],h=[-1],p=[-1],g=0)=>samp.callNative("CreateDynamicRaceCPEx","iffffffffaaaaiiiii",e,t,i,a,n,r,s,l,o,d,c,h,p,g,d.length,c.length,h.length,p.length),nn=(e,t,i,a,n,r=Ze.LOCAL,s=D.MAP_ICON_SD,l=[-1],o=[-1],d=[-1],c=[-1],h=0)=>samp.callNative("CreateDynamicMapIconEx","fffiiifaaaaiiiii",e,t,i,a,n,r,s,l,o,d,c,h,l.length,o.length,d.length,c.length),rn=(e,t,i,a=[-1],n=[-1],r=[-1])=>samp.callNative("CreateDynamicCircleEx","fffaaaiii",e,t,i,a,n,r,a.length,n.length,r.length),sn=(e,t,i,a,n,r=[-1],s=[-1],l=[-1])=>samp.callNative("CreateDynamicCylinderEx","fffffaaaiii",e,t,i,a,n,r,s,l,r.length,s.length,l.length),ln=(e,t,i,a,n=[-1],r=[-1],s=[-1])=>samp.callNative("CreateDynamicSphereEx","ffffaaaiii",e,t,i,a,n,r,s,n.length,r.length,s.length),on=(e,t,i,a,n=[-1],r=[-1],s=[-1])=>samp.callNative("CreateDynamicRectangleEx","ffffaaaiii",e,t,i,a,n,r,s,n.length,r.length,s.length),dn=(e,t,i,a,n,r,s=[-1],l=[-1],o=[-1])=>samp.callNative("CreateDynamicCuboidEx","ffffffaaaiii",e,t,i,a,n,r,s,l,o,s.length,l.length,o.length),cn=(e,t=Number.MIN_VALUE,i=Number.MAX_VALUE,a=[-1],n=[-1],r=[-1])=>samp.callNative("CreateDynamicPolygonEx","affiaaaiii",e,t,i,e.length,a,n,r,a.length,n.length,r.length),_n=(e,t,i,a,n,r=!0,s=100,l=D.ACTOR_SD,o=[0],d=[-1],c=[-1],h=[-1],p=0)=>samp.callNative("CreateDynamicActorEx","iffffiffaaaaiiiii",e,t,i,a,n,r,s,l,o,d,c,h,p,o.length,d.length,c.length,h.length),hn=(e,t,i,a,n,r=3)=>{const[s,l]=samp.callNative("Streamer_GetDistanceToItem","fffiiFi",e,t,i,a,n,r);return{distance:s,ret:l}},un=(e,t,i,a)=>samp.callNative("Streamer_ToggleItem","iiii",e,t,i,a),mn=(e,t,i)=>!!samp.callNative("Streamer_IsToggleItem","iii",e,t,i),pn=(e,t,i,a=[-1])=>samp.callNative("Streamer_ToggleAllItems","iiiai",e,t,i,a,a.length),fn=(e,t,i)=>samp.callNative("Streamer_GetItemInternalID","iii",e,t,i),gn=(e,t,i)=>samp.callNative("Streamer_GetItemStreamerID","iii",e,t,i),Pn=(e,t,i)=>!!samp.callNative("Streamer_IsItemVisible","iii",e,t,i),Sn=(e,t,i=Ke)=>samp.callNative("Streamer_DestroyAllVisibleItems","iii",e,t,i),yn=(e,t,i=Ke)=>samp.callNative("Streamer_CountVisibleItems","iii",e,t,i),In=(e,t=Ke)=>samp.callNative("Streamer_DestroyAllItems","ii",e,t),En=(e,t=Ke)=>samp.callNative("Streamer_CountItems","ii",e,t),An=(e,t,i,a,n=Vt,r=Mi,s=Mt)=>{const[l=[],o=0]=samp.callNative("Streamer_GetNearbyItems","fffiAifi",e,t,i,a,n,r,s);return l.slice(0,o)},Cn=(e,t,i=Vt)=>{const[a=[],n=0]=samp.callNative("Streamer_GetAllVisibleItems","iiAi",e,t,i);return a.slice(0,n)},Nn=(e,t)=>{const[i,a,n,r]=samp.callNative("Streamer_GetItemPos","iiFFF",e,t);return{x:i,y:a,z:n,ret:r}},Tn=(e,t,i,a,n)=>samp.callNative("Streamer_SetItemPos","iifff",e,t,i,a,n),Dn=(e,t)=>{const[i,a,n,r]=samp.callNative("Streamer_GetItemOffset","iiFFF",e,t);return{x:i,y:a,z:n,ret:r}},vn=(e,t,i,a,n)=>samp.callNative("Streamer_SetItemOffset","iifff",e,t,i,a,n),wn=(e,t,i,a,n,r,s,l=Mt,o=Li,d=bi,c=D.OBJECT_SD,h=D.OBJECT_DD,p=Oi,g=Gi)=>samp.callNative("CreateDynamicObject","iffffffiiiffii",e,t,i,a,n,r,s,l,o,d,c,h,p,g),Rn=e=>samp.callNative("DestroyDynamicObject","i",e),Ln=e=>!!samp.callNative("IsValidDynamicObject","i",e),bn=e=>{const[t,i,a,n]=samp.callNative("GetDynamicObjectPos","iFFF",e);return{x:t,y:i,z:a,ret:n}},On=(e,t,i,a)=>samp.callNative("SetDynamicObjectPos","ifff",e,t,i,a),Gn=e=>{const[t,i,a,n]=samp.callNative("GetDynamicObjectRot","iFFF",e);return{rx:t,ry:i,rz:a,ret:n}},Fn=(e,t,i,a)=>samp.callNative("SetDynamicObjectRot","ifff",e,t,i,a),Bn=(e,t,i,a,n,r=Fi,s=Bi,l=xi)=>samp.callNative("MoveDynamicObject","ifffffff",e,t,i,a,n,r,s,l),xn=e=>samp.callNative("StopDynamicObject","i",e),kn=e=>!!samp.callNative("IsDynamicObjectMoving","i",e),Mn=(e,t)=>samp.callNative("AttachCameraToDynamicObject","ii",e,t),Vn=(e,t,i,a,n,r,s,l,o=Vi)=>samp.callNative("AttachDynamicObjectToObject","iiffffffi",e,t,i,a,n,r,s,l,o),Hn=(e,t,i,a,n,r,s,l)=>samp.callNative("AttachDynamicObjectToPlayer","iiffffff",e,t,i,a,n,r,s,l),Un=(e,t,i,a,n,r,s,l)=>samp.callNative("AttachDynamicObjectToVehicle","iiffffff",e,t,i,a,n,r,s,l),Wn=(e,t)=>samp.callNative("EditDynamicObject","ii",e,t),jn=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialUsed","ii",e,t),Kn=(e,t)=>samp.callNative("RemoveDynamicObjectMaterial","ii",e,t),Zn=(e,t,i,a,n,r=ki)=>samp.callNative("SetDynamicObjectMaterial","iiissi",e,t,i,a,n,r),Xn=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialTextUsed","ii",e,t),Yn=(e,t)=>samp.callNative("RemoveDynamicObjectMaterialText","ii",e,t),zn=e=>samp.callNative("GetPlayerCameraTargetDynObject","i",e),$n=e=>!!samp.callNative("SetDynamicObjectNoCameraCol","i",e),Jn=e=>!!samp.callNative("GetDynamicObjectNoCameraCol","i",e),Qn=(e,t,i,a,n,r=-1,s=-1,l=-1,o=D.PICKUP_SD,d=-1,c=0)=>samp.callNative("CreateDynamicPickup","iifffiiifii",e,t,i,a,n,r,s,l,o,d,c),qn=e=>!!samp.callNative("DestroyDynamicPickup","i",e),er=e=>!!samp.callNative("IsValidDynamicPickup","i",e),tr=(e,t,i,a,n,r,s,l,o=-1,d=-1,c=-1,h=D.RACE_CP_SD,p=-1,g=0)=>samp.callNative("CreateDynamicRaceCP","ifffffffiiifii",e,t,i,a,n,r,s,l,o,d,c,h,p,g),ir=e=>samp.callNative("DestroyDynamicRaceCP","i",e),ar=(e,t,i)=>samp.callNative("TogglePlayerDynamicRaceCP","iii",e,t,i),nr=(e,t)=>samp.callNative("TogglePlayerAllDynamicRaceCPs","ii",e,t),rr=(e,t)=>!!samp.callNative("IsPlayerInDynamicRaceCP","ii",e,t),sr=e=>samp.callNative("GetPlayerVisibleDynamicRaceCP","i",e),lr=()=>samp.callNative("Streamer_GetTickRate",""),or=(e=50)=>samp.callNative("Streamer_SetTickRate","i",e),dr=e=>samp.callNative("Streamer_GetPlayerTickRate","i",e),cr=(e,t=50)=>samp.callNative("Streamer_SetPlayerTickRate","ii",e,t),_r=(e=!1)=>samp.callNative("Streamer_ToggleChunkStream","i",e),hr=()=>!!samp.callNative("Streamer_IsToggleChunkStream",""),Xt=(e,t=-1)=>samp.callNative("Streamer_GetChunkTickRate","ii",e,t),Yt=(e,t,i=-1)=>samp.callNative("Streamer_SetChunkTickRate","iii",e,t,i),ur=e=>samp.callNative("Streamer_GetChunkSize","i",e),mr=(e,t)=>samp.callNative("Streamer_SetChunkSize","ii",e,t),pr=e=>samp.callNative("Streamer_GetMaxItems","i",e),fr=(e,t)=>samp.callNative("Streamer_SetMaxItems","ii",e,t),zt=(e,t=-1)=>samp.callNative("Streamer_GetVisibleItems","ii",e,t),$t=(e,t,i=-1)=>samp.callNative("Streamer_SetVisibleItems","iii",e,t,i),Jt=(e,t=-1)=>{const[i,a]=samp.callNative("Streamer_GetRadiusMultiplier","iFi",e,t);return{multiplier:i,ret:a}},Qt=(e,t,i=-1)=>samp.callNative("Streamer_SetRadiusMultiplier","ifi",e,t,i),gr=()=>{const[e,t]=samp.callNative("Streamer_GetTypePriority","Ai",We.MAX_TYPES);return{priority:e,ret:t}},Pr=e=>samp.callNative("Streamer_SetTypePriority","ai",e,We.MAX_TYPES),Sr=()=>{const[e,t]=samp.callNative("Streamer_GetCellDistance","F");return{distance:e,ret:t}},yr=(e=600)=>samp.callNative("Streamer_SetCellDistance","f",e),Ir=()=>{const[e,t]=samp.callNative("Streamer_GetCellSize","F");return{size:e,ret:t}},Er=(e=300)=>samp.callNative("Streamer_SetCellSize","f",e),Ar=(e,t,i)=>samp.callNative("Streamer_ToggleItemStatic","iii",e,t,i),Cr=(e,t)=>!!samp.callNative("Streamer_IsToggleItemStatic","ii",e,t),Nr=(e,t,i)=>samp.callNative("Streamer_ToggleItemInvAreas","iii",e,t,i),Tr=(e,t)=>!!samp.callNative("Streamer_IsToggleItemInvAreas","ii",e,t),Dr=(e,t,i)=>samp.callNative("Streamer_ToggleItemCallbacks","iii",e,t,i),vr=(e,t)=>!!samp.callNative("Streamer_IsToggleItemCallbacks","ii",e,t),wr=e=>samp.callNative("Streamer_ToggleErrorCallback","i",e),Rr=()=>!!samp.callNative("Streamer_IsToggleErrorCallback",""),Lr=e=>samp.callNative("Streamer_AmxUnloadDestroyItems","i",e),br=()=>samp.callNative("Streamer_ProcessActiveItems",""),Or=(e,t)=>samp.callNative("Streamer_ToggleIdleUpdate","ii",e,t),Gr=e=>!!samp.callNative("Streamer_IsToggleIdleUpdate","i",e),Fr=(e,t)=>samp.callNative("Streamer_ToggleCameraUpdate","ii",e,t),Br=e=>!!samp.callNative("Streamer_IsToggleCameraUpdate","i",e),xr=(e,t,i)=>samp.callNative("Streamer_ToggleItemUpdate","iii",e,t,i),kr=(e,t)=>!!samp.callNative("Streamer_IsToggleItemUpdate","ii",e,t),Mr=()=>{const[e,t]=samp.callNative("Streamer_GetLastUpdateTime","F");return{time:e,ret:t}},Vr=(e,t=-1)=>samp.callNative("Streamer_Update","ii",e,t),Hr=(e,t,i,a,n=-1,r=-1,s=-1,l=-1,o=!0)=>samp.callNative("Streamer_UpdateEx","ifffiiiii",e,t,i,a,n,r,s,l,o),B=new Map,qt=new Map;function Ur(e,t){return typeof e=="boolean"?+e:typeof e=="number"&&!isNaN(e)?e:+t}function ei(e,t,...i){const{defaultValue:a=!0,name:n,beforeEach:r,afterEach:s,throwOnError:l=!1}=e,o=B.get(n);if(!o||!o.length)return+a;const d=r?r(...i):{},c=[];let h=t;const p=g=>{if(h++,h<o.length){try{g&&Object.assign(d,g);const f={next:p,defaultValue:a,...d},y=o[h](f);return y instanceof Promise?(c.push(y),a):y}catch(f){const y=`executing event [name:${n},index:${h}] error:
2
+ ${f}`;if(l)throw{error:f,message:y};console.log(y)}return a}return s&&(c.length?Promise.allSettled(c).then(()=>s(d)):s(d)),a};return Ur(p(),a)}function u(e){const{name:t,identifier:i,isNative:a=!0}=e;if(B.has(t)){const l=`event [name:${t}] error: already defined.`;throw new Error(l)}function n(...l){if(l.length===1&&typeof l[0]=="object"&&l[0].__trigger__){const o=l[0];let d=-1;if(o.skipToNext){const c=B.get(t);if(c&&c.length){const h=c.indexOf(o.skipToNext);h>-1&&(d=h)}}return ei(e,d,...o.args)}return ei(e,-1,...l)}function r(l,o=!1){B.has(t)||B.set(t,[]);const d=B.get(t),c=(o?d.unshift(l):d.push(l))-1;return()=>{const h=B.get(t);if(!h)return;const p=h.length-1,g=p<c?p:c;for(let f=g;f>=0;f--)if(h[f]===l){h.splice(f,1);break}return h.length===0&&B.delete(t),h.length}}const s=[r,n];return a&&(typeof i<"u"&&samp.registerEvent(t,i),samp.on(t,n)),qt.set(t,n),s}function Wr(e){return qt.get(e)}function jr(e){return Object.assign(e,{__trigger__:!0})}const Kr=e=>!!samp.callNative("IsValidNickName","s",e),Zr=(e,t)=>{samp.callNative("AllowNickNameCharacter","ii",e,t)},Xr=e=>!!samp.callNative("IsNickNameCharacterAllowed","i",e),Yr=(e,t)=>!!samp.callNative("AddServerRule","ss",e,t),zr=(e,t)=>!!samp.callNative("SetServerRule","ss",e,t),$r=e=>!!samp.callNative("IsValidServerRule","s",e),Jr=e=>!!samp.callNative("RemoveServerRule","s",e),Qr=e=>{samp.callNative("AllowAdminTeleport","i",e)},qr=()=>!!samp.callNative("IsAdminTeleportAllowed",""),es=e=>{samp.callNative("AllowInteriorWeapons","i",e)},ts=()=>!!samp.callNative("AreInteriorWeaponsAllowed",""),is=()=>!!samp.callNative("AreAllAnimationsEnabled",""),as=e=>{samp.callNative("EnableAllAnimations","i",e)},ns=e=>{const[t,i]=samp.callNative("GetConsoleVarAsString","sAi",e,64);return{consoleVarBuf:t,ret:i}},rs=e=>samp.callNative("GetConsoleVarAsInt","s",e),ss=e=>!!samp.callNative("GetConsoleVarAsBool","s",e),ls=()=>samp.callNative("GetWeather",""),os=e=>samp.callNative("GetServerRuleFlags","s",e),ds=(e,t)=>!!samp.callNative("SetServerRuleFlags","si",e,t),cs=e=>!!samp.callNative("SetModeRestartTime","f",e),_s=()=>samp.callNativeFloat("GetModeRestartTime",""),hs=(e,t,i)=>samp.callNative("GameTextForAll","aii",e,t,i),us=e=>{samp.callNative("HideGameTextForAll","i",e)},ms=(e,t,i)=>samp.callNative("SendDeathMessage","iii",e,t,i),ps=()=>samp.callNative("GetMaxPlayers",""),qe=(e,t,i)=>Math.sqrt(e*e+t*t+i*i),fs=e=>samp.callNative("SetGameModeText","s",e),gs=e=>samp.callNative("ShowNameTags","i",e),Ps=e=>samp.callNative("ShowPlayerMarkers","i",e),Ss=e=>samp.callNative("SetWorldTime","i",e),ys=()=>samp.callNative("GetWorldTime",""),Is=()=>!!samp.callNative("EnableVehicleFriendlyFire",""),Es=e=>samp.callNative("SetWeather","i",e),As=()=>samp.callNativeFloat("GetGravity",""),Cs=e=>samp.callNative("SetGravity","f",e),Ns=(e,t,i,a,n)=>samp.callNative("CreateExplosion","fffif",e,t,i,a,n),Ts=e=>samp.callNative("EnableZoneNames","i",e),Ds=()=>!!samp.callNative("UsePlayerPedAnims",""),vs=()=>!!samp.callNative("DisableInteriorEnterExits",""),ws=e=>samp.callNative("SetNameTagDrawDistance","f",e),Rs=()=>samp.callNative("DisableNameTagLOS",""),Ls=e=>samp.callNative("LimitGlobalChatRadius","f",e),bs=e=>samp.callNative("LimitPlayerMarkerRadius","f",e),Os=()=>samp.callNative("GetServerTickRate",""),Gs=e=>samp.callNative("GetAnimationName","iSiSi",e,32,32),Fs=e=>!!samp.callNative("EnableStuntBonusForAll","i",e),Bs=e=>{samp.callNative("ToggleChatTextReplacement","i",e)},xs=()=>!!samp.callNative("ChatTextReplacementToggled",""),ks=e=>samp.callNative("GetWeaponSlot","i",e),Ms=e=>{const[t,i]=samp.callNative("GetWeaponName","iSi",e,32);return{name:t,ret:i}},Vs=()=>samp.callNative("GetAvailableClasses",""),Hs=e=>{const t=samp.callNative("GetPlayerClass","iIIFFFFIIIIII",e),[i,a=0,n=0,r=0,s=0,l=0,o=0,d=0,c=0,h=0,p=0,g=0,f]=t;return{teamId:i,modelId:a,spawnX:n,spawnY:r,spawnZ:s,zAngle:l,weapon1:o,weapon1Ammo:d,weapon2:c,weapon2Ammo:h,weapon3:p,weapon3Ammo:g,ret:f}},Us=(e,t,i,a,n,r,s,l,o,d,c,h,p)=>!!samp.callNative("EditPlayerClass","iiiffffiiiiii",e,t,i,a,n,r,s,l,o,d,c,h,p),Ws=e=>samp.callNative("SetTeamCount","i",e),js=(e,t,i,a,n,r,s,l,o,d,c)=>samp.callNative("AddPlayerClass","iffffiiiiii",e,t,i,a,n,r,s,l,o,d,c),Ks=(e,t,i,a,n,r,s,l,o,d,c,h)=>samp.callNative("AddPlayerClassEx","iiffffiiiiii",e,t,i,a,n,r,s,l,o,d,c,h),Zs=(e,t,i,a,n,r,s,l,o,d,c,h,p)=>!!samp.callNative("SetSpawnInfo","iiiffffiiiiii",e,t,i,a,n,r,s,l,o,d,c,h,p),Xs=e=>!!samp.callNative("SpawnPlayer","i",e),Ys=e=>{const[t,i=0,a=0,n=0,r=0,s=0,l=0,o=0,d=0,c=0,h=0,p=0,g]=samp.callNative("GetSpawnInfo","iIIFFFFIIIIII",e);return{teamId:t,modelId:i,spawnX:a,spawnY:n,spawnZ:r,zAngle:s,weapon1:l,weapon1Ammo:o,weapon2:d,weapon2Ammo:c,weapon3:h,weapon3Ammo:p,ret:g}},zs=e=>samp.callNative("NetStats_GetConnectedTime","i",e),$s=e=>samp.callNative("NetStats_MessagesReceived","i",e),Js=e=>samp.callNative("NetStats_BytesReceived","i",e),Qs=e=>samp.callNative("NetStats_MessagesSent","i",e),qs=e=>samp.callNative("NetStats_BytesSent","i",e),el=e=>samp.callNative("NetStats_MessagesRecvPerSecond","i",e),tl=e=>samp.callNativeFloat("NetStats_PacketLossPercent","i",e),il=e=>samp.callNative("NetStats_ConnectionStatus","i",e),al=e=>{const[t,i]=samp.callNative("NetStats_GetIpPort","iSi",e,134);return{ipPort:t,ret:i}},nl=e=>!!samp.callNative("IsPlayerAdmin","i",e),rl=(e,t)=>!!samp.callNative("SetPlayerAdmin","ii",e,t),sl=e=>!!samp.callNative("Kick","i",e),ll=e=>!!samp.callNative("Ban","i",e),ol=e=>{const[t,i]=samp.callNative("GetPlayerNetworkStats","iSi",e,1024);return{stats:t,ret:i}},dl=()=>{const[e,t]=samp.callNative("GetNetworkStats","Si",1024);return{stats:e,ret:t}},cl=(e,t)=>samp.callNative("BlockIpAddress","si",e,t),_l=e=>samp.callNative("UnBlockIpAddress","s",e),hl=(e,t)=>{const[i,a]=samp.callNative("gpci","iAi",e,41);return{val:I.decodeFromBuf(I.getValidStr(i),t),ret:a}},ul=(e,t,i,a,n)=>samp.callNative("SendClientCheck","iiiii",e,t,i,a,n),ml=()=>{samp.callNative("ClearBanList","")},pl=e=>!!samp.callNative("IsBanned","s",e),fl=e=>samp.callNative("GetPlayerRawIp","i",e),gl=e=>{const[t,i]=samp.callNative("GetPlayerIp","iSi",e,128);return{ip:t,ret:i}},Pl=e=>{const[t,i]=samp.callNative("GetPlayerVersion","iSi",e,24);return{version:t,ret:i}},E=e=>{if(typeof e=="number")return e;if(typeof+e=="number"&&!isNaN(+e))return+e;if(e.charAt(0)==="#")return e.length===4?parseInt(e.charAt(1)+e.charAt(1)+e.charAt(2)+e.charAt(2)+e.charAt(3)+e.charAt(3)+"FF",16):e.length===7?parseInt(e.slice(1,e.length)+"FF",16):e.length===9?parseInt(e.slice(1,e.length),16):255;const t=(e.match(/([0-9])+/g)||[]).map(a=>parseInt(a,10));if(t.length!==4&&t.length!==3)return 255;t.length===3?t.push(255):t[3]=t[3]<1?Math.floor(t[3]*255):255;let i=0;return t.reverse().forEach((a,n)=>{a!==0&&(i+=Math.pow(16,n*2)*a)}),i},Sl=(e,t)=>!!samp.callNative("TogglePlayerWidescreen","ii",e,t),yl=e=>!!samp.callNative("IsPlayerWidescreenToggled","i",e),Il=(e,t)=>samp.callNative("GetPlayerSkillLevel","ii",e,t),El=e=>samp.callNative("GetPlayerWeather","i",e),Al=e=>{const[t=0,i=0,a=0,n=0,r]=samp.callNative("GetPlayerWorldBounds","iFFFF",e);return{xMax:t,xMin:i,yMax:a,yMin:n,ret:r}},Cl=e=>samp.callNativeFloat("GetPlayerZAim","i",e),Nl=e=>{const[t=0,i=0,a=0,n]=samp.callNative("GetPlayerSurfingOffsets","iFFF",e);return{fOffsetX:t,fOffsetY:i,fOffsetZ:a,ret:n}},Tl=e=>{const[t=0,i=0,a=0,n=0,r]=samp.callNative("GetPlayerRotationQuat","iFFFF",e);return{w:t,x:i,y:a,z:n,ret:r}},Dl=e=>samp.callNative("GetPlayerDialogID","i",e),vl=e=>samp.callNative("GetPlayerSpectateID","i",e),wl=e=>samp.callNative("GetPlayerSpectateType","i",e),Rl=(e,t)=>!!samp.callNative("SetPlayerGravity","if",e,t),Ll=e=>samp.callNativeFloat("GetPlayerGravity","i",e),bl=e=>!!samp.callNative("IsPlayerSpawned","i",e),Ol=e=>!!samp.callNative("IsPlayerControllable","i",e),Gl=e=>!!samp.callNative("IsPlayerCameraTargetEnabled","i",e),Fl=(e,t)=>!!samp.callNative("TogglePlayerGhostMode","ii",e,t),Bl=e=>!!samp.callNative("GetPlayerGhostMode","i",e),xl=e=>samp.callNative("GetPlayerBuildingsRemoved","i",e),kl=(e,t)=>!!samp.callNative("RemovePlayerWeapon","ii",e,t),Ml=e=>!!samp.callNative("HidePlayerDialog","i",e),Vl=e=>!!samp.callNative("IsPlayerUsingOfficialClient","i",e),Hl=(e,t)=>!!samp.callNative("AllowPlayerTeleport","ii",e,t),Ul=e=>!!samp.callNative("IsPlayerTeleportAllowed","i",e),Wl=(e,t)=>!!samp.callNative("AllowPlayerWeapons","i",e,t),jl=e=>!!samp.callNative("ArePlayerWeaponsAllowed","i",e),Kl=(e,t,i,a)=>!!samp.callNative("GameTextForPlayer","iaii",e,t,i,a),Zl=(e,t)=>!!samp.callNative("HasGameText","ii",e,t),Xl=(e,t,i,a)=>!!samp.callNative("SendDeathMessageToPlayer","iiii",e,t,i,a),Yl=(e,t)=>!!samp.callNative("HideGameTextForPlayer","ii",e,t),zl=e=>!!samp.callNative("IsPlayerNPC","i",e),$l=(e,t,i,a)=>!!samp.callNative("SetPlayerPos","ifff",e,t,i,a),Jl=(e,t,i,a)=>!!samp.callNative("SetPlayerPosFindZ","ifff",e,t,i,a),Ql=e=>{const[t,i,a,n]=samp.callNative("GetPlayerPos","iFFF",e);return{x:t,y:i,z:a,ret:n}},ql=(e,t)=>!!samp.callNative("SetPlayerFacingAngle","if",e,t),eo=e=>{const[t,i]=samp.callNative("GetPlayerFacingAngle","iF",e);return{angle:t,ret:i}},to=(e,t,i,a,n)=>!!samp.callNative("IsPlayerInRangeOfPoint","iffff",e,t,i,a,n),io=(e,t,i,a)=>samp.callNativeFloat("GetPlayerDistanceFromPoint","ifff",e,t,i,a),ao=(e,t)=>!!samp.callNative("IsPlayerStreamedIn","ii",e,t),no=(e,t)=>!!samp.callNative("SetPlayerInterior","ii",e,t),ro=e=>samp.callNative("GetPlayerInterior","i",e),so=(e,t)=>!!samp.callNative("SetPlayerHealth","if",e,t),lo=e=>{const[t,i]=samp.callNative("GetPlayerHealth","iF",e);return{health:t,ret:i}},oo=(e,t)=>!!samp.callNative("SetPlayerArmour","if",e,t),co=e=>{const[t,i]=samp.callNative("GetPlayerArmour","iF",e);return{armour:t,ret:i}},_o=(e,t,i)=>!!samp.callNative("SetPlayerAmmo","iii",e,t,i),ho=e=>samp.callNative("GetPlayerAmmo","i",e),uo=e=>samp.callNative("GetPlayerWeaponState","i",e),mo=e=>samp.callNative("GetPlayerTargetPlayer","i",e),po=(e,t)=>{samp.callNative("SetPlayerTeam","ii",e,t)},fo=e=>samp.callNative("GetPlayerTeam","i",e),go=(e,t)=>!!samp.callNative("SetPlayerScore","ii",e,t),Po=e=>samp.callNative("GetPlayerScore","i",e),So=e=>samp.callNative("GetPlayerDrunkLevel","i",e),yo=(e,t)=>!!samp.callNative("SetPlayerDrunkLevel","ii",e,t),Io=(e,t)=>!!samp.callNative("SetPlayerColor","ii",e,E(t)),Eo=e=>samp.callNative("GetPlayerColor","i",e),Ao=(e,t)=>!!samp.callNative("SetPlayerSkin","ii",e,t),Co=e=>samp.callNative("GetPlayerSkin","i",e),No=(e,t,i)=>!!samp.callNative("GivePlayerWeapon","iii",e,t,i),To=e=>!!samp.callNative("ResetPlayerWeapons","i",e),Do=(e,t)=>!!samp.callNative("SetPlayerArmedWeapon","ii",e,t),vo=(e,t)=>{const[i,a,n]=samp.callNative("GetPlayerWeaponData","iiII",e,t);return{weapons:i,ammo:a,ret:n}},wo=(e,t)=>!!samp.callNative("GivePlayerMoney","ii",e,t),Ro=e=>!!samp.callNative("ResetPlayerMoney","i",e),Lo=e=>samp.callNative("GetPlayerMoney","i",e),bo=e=>samp.callNative("GetPlayerState","i",e),Oo=e=>samp.callNative("GetPlayerPing","i",e),Go=e=>samp.callNative("GetPlayerWeapon","i",e),Fo=e=>{const[t,i,a,n]=samp.callNative("GetPlayerKeys","iIII",e);return{keys:t,upDown:i,leftRight:a,ret:n}},Bo=(e,t,i)=>!!samp.callNative("SetPlayerTime","iii",e,t,i),xo=e=>{const[t,i,a]=samp.callNative("GetPlayerTime","iII",e);return{hour:t,minute:i,ret:a}},ko=(e,t)=>!!samp.callNative("TogglePlayerClock","ii",e,t),Mo=(e,t)=>!!samp.callNative("SetPlayerWeather","ii",e,t),Vo=e=>!!samp.callNative("ForceClassSelection","i",e),Ho=(e,t)=>!!samp.callNative("SetPlayerWantedLevel","ii",e,t),Uo=e=>samp.callNative("GetPlayerWantedLevel","i",e),Wo=(e,t)=>!!samp.callNative("SetPlayerFightingStyle","ii",e,t),jo=e=>samp.callNative("GetPlayerFightingStyle","i",e),Ko=(e,t,i,a)=>!!samp.callNative("SetPlayerVelocity","ifff",e,t,i,a),Zo=e=>{const[t,i,a,n]=samp.callNative("GetPlayerVelocity","iFFF",e);return{x:t,y:i,z:a,ret:n}},Xo=(e,t,i)=>!!samp.callNative("PlayCrimeReportForPlayer","iii",e,t,i),Yo=(e,t,i,a,n,r,s=!1)=>!!samp.callNative("PlayAudioStreamForPlayer","isffffi",e,t,i,a,n,r,s),zo=e=>!!samp.callNative("StopAudioStreamForPlayer","i",e),$o=(e,t)=>!!samp.callNative("SetPlayerShopName","is",e,t),Jo=(e,t,i)=>!!samp.callNative("SetPlayerSkillLevel","iii",e,t,i),Qo=e=>samp.callNative("GetPlayerSurfingVehicleID","i",e),qo=e=>samp.callNative("GetPlayerSurfingObjectID","i",e),ed=e=>samp.callNative("GetPlayerSurfingPlayerObjectID","i",e),td=(e,t,i,a,n,r)=>!!samp.callNative("RemoveBuildingForPlayer","iiffff",e,t,i,a,n,r),id=e=>{const[t,i,a,n,r,s,l]=samp.callNative("GetPlayerLastShotVectors","iFFFFFF",e);return{fOriginX:t,fOriginY:i,fOriginZ:a,fHitPosX:n,fHitPosY:r,fHitPosZ:s,ret:l}},ad=(e,t,i)=>!!samp.callNative("PutPlayerInVehicle","iii",e,t,i),nd=e=>samp.callNative("GetPlayerVehicleID","i",e),rd=e=>samp.callNative("GetPlayerVehicleSeat","i",e),sd=e=>!!samp.callNative("RemovePlayerFromVehicle","i",e),ld=(e,t)=>!!samp.callNative("TogglePlayerControllable","ii",e,t),od=(e,t,i,a,n)=>!!samp.callNative("PlayerPlaySound","iifff",e,t,i,a,n),dd=(e,t,i,a,n,r,s,l,o,d)=>!!samp.callNative("ApplyAnimation","issfiiiiii",e,t,i,a,n,r,s,l,o,d),cd=(e,t)=>!!samp.callNative("ClearAnimations","ii",e,t),_d=e=>samp.callNative("GetPlayerAnimationIndex","i",e),hd=e=>samp.callNative("GetPlayerSpecialAction","i",e),ud=(e,t)=>!!samp.callNative("SetPlayerSpecialAction","ii",e,t),md=(e,t)=>!!samp.callNative("DisableRemoteVehicleCollisions","ii",e,t),pd=(e,t)=>!!samp.callNative("SetPlayerVirtualWorld","ii",e,t),fd=e=>samp.callNative("GetPlayerVirtualWorld","i",e),gd=(e,t)=>!!samp.callNative("EnableStuntBonusForPlayer","ii",e,t),Pd=e=>samp.callNative("GetPlayerCustomSkin","i",e),Sd=(e,t,i,a,n,r)=>!!samp.callNative("CreateExplosionForPlayer","ifffif",e,t,i,a,n,r),yd=(e,t,i)=>!!samp.callNative("StartRecordingPlayerData","iis",e,t,i),Id=e=>!!samp.callNative("StopRecordingPlayerData","i",e),Ed=(e,t)=>!!samp.callNative("TogglePlayerSpectating","ii",e,t),Ad=(e,t,i)=>!!samp.callNative("PlayerSpectatePlayer","iii",e,t,i),Cd=(e,t,i)=>!!samp.callNative("PlayerSpectateVehicle","iii",e,t,i),Nd=e=>!!samp.callNative("IsPlayerConnected","i",e),Td=(e,t)=>!!samp.callNative("IsPlayerInVehicle","ii",e,t),Dd=e=>!!samp.callNative("IsPlayerInAnyVehicle","i",e),vd=(e,t,i,a,n)=>!!samp.callNative("SetPlayerWorldBounds","iffff",e,t,i,a,n),wd=e=>!!samp.callNative("ClearPlayerWorldBounds","i",e),Rd=(e,t,i)=>!!samp.callNative("SetPlayerMarkerForPlayer","iii",e,t,E(i));function Ld(e,t){return samp.callNative("GetPlayerMarkerForPlayer","ii",e,t)}const bd=(e,t,i)=>!!samp.callNative("ShowPlayerNameTagForPlayer","iii",e,t,i),Od=(e,t,i,a)=>!!samp.callNative("SetPlayerCameraPos","ifff",e,t,i,a),Gd=(e,t,i,a,n)=>!!samp.callNative("SetPlayerCameraLookAt","ifffi",e,t,i,a,n),Fd=e=>!!samp.callNative("SetCameraBehindPlayer","i",e),Bd=e=>{const[t,i,a,n]=samp.callNative("GetPlayerCameraPos","iFFF",e);return{x:t,y:i,z:a,ret:n}},xd=e=>{const[t,i,a,n]=samp.callNative("GetPlayerCameraFrontVector","iFFF",e);return{x:t,y:i,z:a,ret:n}},kd=e=>samp.callNative("GetPlayerCameraMode","i",e),Md=(e,t)=>!!samp.callNative("EnablePlayerCameraTarget","ii",e,t),Vd=e=>samp.callNative("GetPlayerCameraTargetVehicle","i",e),Hd=e=>samp.callNative("GetPlayerCameraTargetPlayer","i",e),Ud=e=>samp.callNativeFloat("GetPlayerCameraAspectRatio","i",e),Wd=e=>samp.callNativeFloat("GetPlayerCameraZoom","i",e),jd=(e,t,i,a,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraPos","iffffffii",e,t,i,a,n,r,s,l,o),Kd=(e,t,i,a,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraLookAt","iffffffii",e,t,i,a,n,r,s,l,o),Zd=e=>!!samp.callNative("IsPlayerCuffed","i",e),Xd=e=>!!samp.callNative("IsPlayerInDriveByMode","i",e),Yd=e=>!!samp.callNative("IsPlayerUsingOmp","i",e),zd=e=>samp.callNative("GetActorSkin","i",e),$d=(e,t)=>samp.callNative("SetActorSkin","ii",e,t),Jd=e=>{const[t=0,i=0,a=0,n=0,r=0,s]=samp.callNative("GetActorSpawnInfo","iIFFFF",e);return{skinId:t,fX:i,fY:a,fZ:n,fAngle:r,ret:s}},Qd=e=>{const[t=0,i=0,a=0,n=0,r=0,s=0,l]=samp.callNative("GetVehicleSpawnInfo","iFFFFII",e);return{fX:t,fY:i,fZ:a,fRot:n,color1:r,color2:s,ret:l}},qd=(e,t,i,a,n,r,s,l,o=-2,d=-2)=>samp.callNative("SetVehicleSpawnInfo","iiffffiiii",e,t,i,a,n,r,s,l,o,d),ec=e=>{const[t=0,i=0,a]=samp.callNative("GetVehicleColor","iII",e);return{color1:t,color2:i,ret:a}},tc=e=>samp.callNative("GetVehiclePaintjob","i",e),ic=e=>samp.callNative("GetVehicleInterior","i",e),ac=e=>{const[t,i]=samp.callNative("GetVehicleNumberPlate","iSi",e,33);return{plate:t,ret:i}},nc=(e,t)=>samp.callNative("SetVehicleRespawnDelay","ii",e,t),rc=e=>samp.callNative("GetVehicleRespawnDelay","i",e),sc=e=>samp.callNative("GetVehicleCab","i",e),lc=e=>samp.callNative("GetVehicleOccupiedTick","i",e),oc=(e,t)=>samp.callNative("SetVehicleOccupiedTick","ii",e,t),dc=e=>!!samp.callNative("HasVehicleBeenOccupied","i",e),cc=e=>!!samp.callNative("IsVehicleOccupied","i",e),_c=e=>samp.callNative("GetVehicleRespawnTick","i",e),hc=(e,t)=>samp.callNative("SetVehicleRespawnTick","ii",e,t),uc=e=>!!samp.callNative("IsVehicleDead","i",e),mc=(e,t)=>!!samp.callNative("SetVehicleDead","ii",e,t),pc=(e,t)=>!!samp.callNative("SetVehicleBeenOccupied","ii",e,t),fc=(e,t)=>samp.callNative("ToggleVehicleSirenEnabled","ii",e,t),gc=(e,t)=>samp.callNative("SetVehicleParamsSirenState","ii",e,t),Pc=e=>!!samp.callNative("IsVehicleSirenEnabled","i",e),Sc=e=>samp.callNative("GetVehicleModelCount","i",e),yc=e=>samp.callNative("GetVehicleLastDriver","i",e),Ic=e=>samp.callNative("GetVehicleDriver","i",e),Ec=()=>samp.callNative("GetVehicleModelsUsed",""),Ac=e=>samp.callNative("GetVehicleSirenState","i",e),Cc=e=>samp.callNative("GetVehicleLandingGearState","i",e),Nc=e=>samp.callNativeFloat("GetVehicleHydraReactorAngle","i",e),Tc=e=>samp.callNativeFloat("GetVehicleTrainSpeed","i",e),Dc=e=>{const[t=0,i=0,a=0,n=0,r=0,s=0,l=0,o=0,d=0,c]=samp.callNative("GetVehicleMatrix","iFFFFFFFFF",e);return{rightX:t,rightY:i,rightZ:a,upX:n,upY:r,upZ:s,atX:l,atY:o,atZ:d,ret:c}},ti=e=>{const[t=0,i=0,a=0,n=0,r]=samp.callNative("GetRandomCarColPair","iIIII",e);return{color:[t,i,a,n],ret:r}},vc=(e,t=255)=>samp.callNative("CarColIndexToColour","ii",e,t),wc=(e,t,i,a,n,r,s,l,o)=>samp.callNative("CreateVehicle","iffffiiii",e,t,i,a,n,E(r),E(s),l,o),Rc=e=>samp.callNative("DestroyVehicle","i",e),Lc=(e,t)=>!!samp.callNative("IsVehicleStreamedIn","ii",e,t),bc=e=>{const[t,i,a,n]=samp.callNative("GetVehiclePos","iFFF",e);return{x:t,y:i,z:a,ret:n}},Oc=(e,t,i,a)=>!!samp.callNative("SetVehiclePos","ifff",e,t,i,a),Gc=e=>{const[t,i]=samp.callNative("GetVehicleZAngle","iF",e);return{angle:t,ret:i}},Fc=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleRotationQuat","iFFFF",e);return{w:t,x:i,y:a,z:n,ret:r}},Bc=(e,t,i,a)=>samp.callNativeFloat("GetVehicleDistanceFromPoint","ifff",e,t,i,a),xc=(e,t)=>samp.callNative("SetVehicleZAngle","if",e,t),kc=(e,t,i,a)=>samp.callNative("SetVehicleParamsForPlayer","iiii",e,t,i,a),Mc=()=>samp.callNative("ManualVehicleEngineAndLights",""),Vc=(e,t,i,a,n,r,s,l)=>samp.callNative("SetVehicleParamsEx","iiiiiiii",e,t,i,a,n,r,s,l),Hc=e=>samp.callNative("GetVehicleParamsEx","iIIIIIII",e),Uc=e=>samp.callNative("GetVehicleParamsSirenState","i",e),Wc=(e,t,i,a,n)=>samp.callNative("SetVehicleParamsCarDoors","iiiii",e,t,i,a,n),jc=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleParamsCarDoors","iIIII",e);return{driver:t,passenger:i,backLeft:a,backRight:n,ret:r}},Kc=(e,t,i,a,n)=>samp.callNative("SetVehicleParamsCarWindows","iiiii",e,t,i,a,n),Zc=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleParamsCarWindows","iIIII",e);return{driver:t,passenger:i,backLeft:a,backRight:n,ret:r}},Xc=e=>samp.callNative("SetVehicleToRespawn","i",e),Yc=(e,t)=>samp.callNative("LinkVehicleToInterior","ii",e,t),zc=(e,t)=>samp.callNative("AddVehicleComponent","ii",e,t),$c=(e,t)=>samp.callNative("RemoveVehicleComponent","ii",e,t),Jc=(e,t,i)=>samp.callNative("ChangeVehicleColor","iii",e,E(t),E(i)),Qc=(e,t)=>samp.callNative("ChangeVehiclePaintjob","ii",e,t),qc=(e,t)=>samp.callNative("SetVehicleHealth","if",e,t),e_=e=>{const[t,i]=samp.callNative("GetVehicleHealth","iF",e);return{health:t,ret:i}},t_=(e,t)=>samp.callNative("AttachTrailerToVehicle","ii",e,t),i_=e=>samp.callNative("DetachTrailerFromVehicle","i",e),a_=e=>!!samp.callNative("IsTrailerAttachedToVehicle","i",e),n_=e=>samp.callNative("GetVehicleTrailer","i",e),r_=(e,t)=>samp.callNative("SetVehicleNumberPlate","is",e,t),s_=e=>samp.callNative("GetVehicleModel","i",e),l_=(e,t)=>samp.callNative("GetVehicleComponentInSlot","ii",e,t),o_=e=>samp.callNative("GetVehicleComponentType","i",e),d_=e=>samp.callNative("RepairVehicle","i",e),c_=e=>{const[t,i,a,n]=samp.callNative("GetVehicleVelocity","iFFF",e);return{x:t,y:i,z:a,ret:n}},__=(e,t,i,a)=>!!samp.callNative("SetVehicleVelocity","ifff",e,t,i,a),h_=(e,t,i,a)=>!!samp.callNative("SetVehicleAngularVelocity","ifff",e,t,i,a),u_=e=>{const[t,i,a,n,r]=samp.callNative("GetVehicleDamageStatus","iIIII",e);return{panels:t,doors:i,lights:a,tires:n,ret:r}},m_=(e,t,i,a,n)=>samp.callNative("UpdateVehicleDamageStatus","iiiii",e,t,i,a,n),p_=(e,t)=>{const[i,a,n,r]=samp.callNative("GetVehicleModelInfo","iiFFF",e,t);return{x:i,y:a,z:n,ret:r}},f_=(e,t)=>samp.callNative("SetVehicleVirtualWorld","ii",e,t),g_=e=>samp.callNative("GetVehicleVirtualWorld","i",e),P_=e=>!!samp.callNative("IsValidVehicle","i",e),S_=(e,t,i,a,n,r,s)=>samp.callNative("AddStaticVehicle","iffffii",e,t,i,a,n,E(r),E(s)),y_=(e,t,i,a,n,r,s,l,o)=>samp.callNative("AddStaticVehicleEx","iffffiiii",e,t,i,a,n,E(r),E(s),l,o),I_=e=>!!samp.callNative("ShowVehicle","i",e),E_=e=>!!samp.callNative("HideVehicle","i",e),A_=e=>!!samp.callNative("IsVehicleHidden","i",e),C_=e=>!!samp.callNative("IsPlayerInModShop","i",e),N_=e=>samp.callNative("GetPlayerSirenState","i",e),T_=e=>samp.callNative("GetPlayerLandingGearState","i",e),D_=e=>samp.callNative("GetPlayerHydraReactorAngle","i",e),v_=e=>samp.callNativeFloat("GetPlayerTrainSpeed","i",e),w_=(e,t)=>samp.callNative("GetVehicleOccupant","ii",e,t),ii=e=>samp.callNative("GetVehicleMaxPassengers","i",e),R_=e=>samp.callNative("CountVehicleOccupants","i",e),L_=e=>!!samp.callNative("IsPlayerCheckpointActive","i",e),b_=e=>{const[t=0,i=0,a=0,n=0,r]=samp.callNative("GetPlayerCheckpoint","iFFFF",e);return{fX:t,fY:i,fZ:a,fSize:n,ret:r}},O_=e=>!!samp.callNative("IsPlayerRaceCheckpointActive","i",e),G_=e=>{const[t=0,i=0,a=0,n=0,r=0,s=0,l=0,o]=samp.callNative("GetPlayerRaceCheckpoint","iFFFFFFF",e);return{fX:t,fY:i,fZ:a,fNextX:n,fNextY:r,fNextZ:s,fSize:l,ret:o}},F_=e=>!!samp.callNative("IsMenuDisabled","i",e),B_=(e,t)=>!!samp.callNative("IsMenuRowDisabled","ii",e,t),x_=(e,t)=>samp.callNative("GetMenuItems","ii",e,t),k_=e=>{const[t=0,i=0,a]=samp.callNative("GetMenuPos","iFF",e);return{fX:t,fY:i,ret:a}},M_=e=>{const[t=0,i=0,a]=samp.callNative("GetMenuColumnWidth","iFF",e);return{fColumn1:t,fColumn2:i,ret:a}},V_=(e,t)=>{const[i,a]=samp.callNative("GetMenuColumnHeader","iiSi",e,t,31);return{header:i,ret:a}},H_=(e,t,i)=>{const[a,n]=samp.callNative("GetMenuItem","iiiSi",e,t,i,31);return{item:a,ret:n}},U_=(e,t,i,a,n,r)=>samp.callNative("CreateMenu","siffff",e,t,i,a,n,r),W_=e=>samp.callNative("DestroyMenu","i",e),j_=(e,t,i)=>samp.callNative("AddMenuItem","iis",e,t,i),K_=(e,t,i)=>samp.callNative("SetMenuColumnHeader","iis",e,t,i),Z_=(e,t)=>samp.callNative("ShowMenuForPlayer","ii",e,t),X_=(e,t)=>samp.callNative("HideMenuForPlayer","ii",e,t),Y_=e=>!!samp.callNative("IsValidMenu","i",e),z_=e=>samp.callNative("DisableMenu","i",e),$_=(e,t)=>samp.callNative("DisableMenuRow","ii",e,t),J_=e=>samp.callNative("GetPlayerMenu","i",e),Q_=e=>!!samp.callNative("IsValidGangZone","i",e),q_=(e,t)=>!!samp.callNative("IsPlayerInGangZone","ii",e,t),eh=(e,t)=>!!samp.callNative("IsGangZoneVisibleForPlayer","ii",e,t),th=(e,t)=>samp.callNative("GangZoneGetColorForPlayer","ii",e,t),ih=(e,t)=>samp.callNative("GangZoneGetFlashColorForPlayer","ii",e,t),ah=(e,t)=>!!samp.callNative("IsGangZoneFlashingForPlayer","ii",e,t),nh=e=>{const[t=0,i=0,a=0,n=0,r]=samp.callNative("GangZoneGetPos","iFFFF",e);return{fMinX:t,fMinY:i,fMaxX:a,fMaxY:n,ret:r}},rh=(e,t)=>{samp.callNative("UseGangZoneCheck","ii",e,t)},sh=(e,t,i,a)=>samp.callNative("GangZoneCreate","ffff",e,t,i,a),lh=e=>samp.callNative("GangZoneDestroy","i",e),oh=(e,t,i)=>samp.callNative("GangZoneShowForPlayer","iii",e,t,E(i)),dh=(e,t)=>samp.callNative("GangZoneShowForAll","ii",e,E(t)),ch=(e,t)=>samp.callNative("GangZoneHideForPlayer","ii",e,t),_h=e=>samp.callNative("GangZoneHideForAll","i",e),hh=(e,t,i)=>samp.callNative("GangZoneFlashForPlayer","iii",e,t,E(i)),uh=(e,t)=>samp.callNative("GangZoneFlashForAll","ii",e,E(t)),mh=(e,t)=>samp.callNative("GangZoneStopFlashForPlayer","ii",e,t),ph=e=>samp.callNative("GangZoneStopFlashForAll","i",e),fh=(e,t,i,a,n)=>samp.callNative("CreatePlayerGangZone","iffff",e,t,i,a,n),gh=(e,t)=>samp.callNative("PlayerGangZoneDestroy","ii",e,t),Ph=(e,t,i)=>samp.callNative("PlayerGangZoneShow","iii",e,t,i),Sh=(e,t)=>samp.callNative("PlayerGangZoneHide","ii",e,t),yh=(e,t,i)=>samp.callNative("PlayerGangZoneFlash","iii",e,t,i),Ih=(e,t)=>samp.callNative("PlayerGangZoneStopFlash","ii",e,t),Eh=(e,t)=>!!samp.callNative("IsValidPlayerGangZone","ii",e,t),Ah=(e,t)=>!!samp.callNative("IsPlayerInPlayerGangZone","ii",e,t),Ch=(e,t)=>!!samp.callNative("IsPlayerGangZoneVisible","ii",e,t),Nh=(e,t)=>samp.callNative("PlayerGangZoneGetColor","ii",e,t),Th=(e,t)=>samp.callNative("PlayerGangZoneGetFlashColor","ii",e,t),Dh=(e,t)=>!!samp.callNative("IsPlayerGangZoneFlashing","ii",e,t),vh=(e,t)=>{const[i=0,a=0,n=0,r=0,s]=samp.callNative("PlayerGangZoneGetPos","iiFFFF",e,t);return{fMinX:i,fMinY:a,fMaxX:n,fMaxY:r,ret:s}},wh=(e,t,i)=>{samp.callNative("UsePlayerGangZoneCheck","iii",e,t,i)},Rh=e=>!!samp.callNative("IsValidTextDraw","i",e),Lh=(e,t)=>!!samp.callNative("IsTextDrawVisibleForPlayer","ii",e,t),bh=e=>{const[t,i]=samp.callNative("TextDrawGetString","iSi",e,1024);return{str:t,ret:i}},Oh=(e,t,i)=>{samp.callNative("TextDrawSetPos","iff",e,t,i)},Gh=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetLetterSize","iFF",e);return{fX:t,fY:i,ret:a}},Fh=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetTextSize","iFF",e);return{fX:t,fY:i,ret:a}},Bh=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetPos","iFF",e);return{fX:t,fY:i,ret:a}},xh=e=>samp.callNative("TextDrawGetColor","i",e),kh=e=>samp.callNative("TextDrawGetBoxColor","i",e),Mh=e=>samp.callNative("TextDrawGetBackgroundColor","i",e),Vh=e=>samp.callNative("TextDrawGetShadow","i",e),Hh=e=>samp.callNative("TextDrawGetOutline","i",e),Uh=e=>samp.callNative("TextDrawGetFont","i",e),Wh=e=>!!samp.callNative("TextDrawIsBox","i",e),jh=e=>!!samp.callNative("TextDrawIsProportional","i",e),Kh=e=>!!samp.callNative("TextDrawIsSelectable","i",e),Zh=e=>samp.callNative("TextDrawGetAlignment","i",e),Xh=e=>samp.callNative("TextDrawGetPreviewModel","i",e),Yh=e=>{const[t=0,i=0,a=0,n=0,r]=samp.callNative("TextDrawGetPreviewRot","iFFFF",e);return{fRotX:t,fRotY:i,fRotZ:a,fZoom:n,ret:r}},zh=e=>{const[t,i,a]=samp.callNative("TextDrawGetPreviewVehCol","iII",e);return{color1:t,color2:i,ret:a}},$h=(e,t,i)=>{samp.callNative("TextDrawSetStringForPlayer","iia",e,t,i)},Jh=(e,t,i)=>samp.callNative("TextDrawCreate","ffa",e,t,i),Qh=e=>samp.callNative("TextDrawDestroy","i",e),qh=(e,t,i)=>samp.callNative("TextDrawLetterSize","iff",e,t,i),eu=(e,t,i)=>samp.callNative("TextDrawTextSize","iff",e,t,i),tu=(e,t)=>samp.callNative("TextDrawAlignment","ii",e,t),iu=(e,t)=>!!samp.callNative("TextDrawColor","ii",e,E(t)),au=(e,t)=>samp.callNative("TextDrawUseBox","ii",e,t),nu=(e,t)=>!!samp.callNative("TextDrawBoxColor","ii",e,E(t)),ru=(e,t)=>samp.callNative("TextDrawSetShadow","ii",e,t),su=(e,t)=>samp.callNative("TextDrawSetOutline","ii",e,t),lu=(e,t)=>!!samp.callNative("TextDrawBackgroundColor","ii",e,E(t)),ou=(e,t)=>samp.callNative("TextDrawFont","ii",e,t),du=(e,t)=>samp.callNative("TextDrawSetProportional","ii",e,t),cu=(e,t)=>samp.callNative("TextDrawSetSelectable","ii",e,t),_u=(e,t)=>samp.callNative("TextDrawShowForPlayer","ii",e,t),hu=(e,t)=>samp.callNative("TextDrawHideForPlayer","ii",e,t),uu=e=>samp.callNative("TextDrawShowForAll","i",e),mu=e=>samp.callNative("TextDrawHideForAll","i",e),pu=(e,t)=>samp.callNative("TextDrawSetString","ia",e,t),fu=(e,t)=>samp.callNative("TextDrawSetPreviewModel","ii",e,t),gu=(e,t,i,a,n=1)=>{samp.callNative("TextDrawSetPreviewRot","iffff",e,t,i,a,n)},Pu=(e,t,i)=>!!samp.callNative("TextDrawSetPreviewVehCol","iii",e,E(t),E(i)),Su=(e,t)=>{samp.callNative("SelectTextDraw","ii",e,E(t))},yu=e=>{samp.callNative("CancelSelectTextDraw","i",e)},Iu=(e,t)=>!!samp.callNative("IsValidPlayerTextDraw","ii",e,t),Eu=(e,t)=>!!samp.callNative("IsPlayerTextDrawVisible","ii",e,t),Au=(e,t)=>{const[i,a]=samp.callNative("PlayerTextDrawGetString","iiSi",e,t,1024);return{str:i,ret:a}},Cu=(e,t,i,a)=>{samp.callNative("PlayerTextDrawSetPos","iiff",e,t,i,a)},Nu=(e,t)=>{const[i=0,a=0,n]=samp.callNative("PlayerTextDrawGetLetterSize","iiFF",e,t);return{fX:i,fY:a,ret:n}},Tu=(e,t)=>{const[i=0,a=0,n]=samp.callNative("PlayerTextDrawGetTextSize","iiFF",e,t);return{fX:i,fY:a,ret:n}},Du=(e,t)=>{const[i=0,a=0,n]=samp.callNative("PlayerTextDrawGetPos","iiFF",e,t);return{fX:i,fY:a,ret:n}},vu=(e,t)=>samp.callNative("PlayerTextDrawGetColor","ii",e,t),wu=(e,t)=>samp.callNative("PlayerTextDrawGetBoxColor","ii",e,t),Ru=(e,t)=>samp.callNative("PlayerTextDrawGetBackgroundColor","ii",e,t),Lu=(e,t)=>samp.callNative("PlayerTextDrawGetShadow","ii",e,t),bu=(e,t)=>samp.callNative("PlayerTextDrawGetOutline","ii",e,t),Ou=(e,t)=>samp.callNative("PlayerTextDrawGetFont","ii",e,t),Gu=(e,t)=>!!samp.callNative("PlayerTextDrawIsBox","ii",e,t),Fu=(e,t)=>!!samp.callNative("PlayerTextDrawIsProportional","ii",e,t),Bu=(e,t)=>!!samp.callNative("PlayerTextDrawIsSelectable","ii",e,t),xu=(e,t)=>samp.callNative("PlayerTextDrawGetAlignment","ii",e,t),ku=(e,t)=>samp.callNative("PlayerTextDrawGetPreviewModel","ii",e,t),Mu=(e,t)=>{const[i=0,a=0,n=0,r=0]=samp.callNative("PlayerTextDrawGetPreviewRot","iiFFFF",e,t);return{fRotX:i,fRotY:a,fRotZ:n,fZoom:r}},Vu=(e,t)=>{const[i,a,n]=samp.callNative("PlayerTextDrawGetPreviewVehCol","iiII",e,t);return{color1:i,color2:a,ret:n}},Hu=(e,t,i,a)=>samp.callNative("CreatePlayerTextDraw","iffa",e,t,i,a),Uu=(e,t)=>{samp.callNative("PlayerTextDrawDestroy","ii",e,t)},Wu=(e,t,i,a)=>samp.callNative("PlayerTextDrawLetterSize","iiff",e,t,i,a),ju=(e,t,i,a)=>samp.callNative("PlayerTextDrawTextSize","iiff",e,t,i,a),Ku=(e,t,i)=>samp.callNative("PlayerTextDrawAlignment","iii",e,t,i),Zu=(e,t,i)=>!!samp.callNative("PlayerTextDrawColor","iii",e,t,E(i)),Xu=(e,t,i)=>samp.callNative("PlayerTextDrawUseBox","iii",e,t,i),Yu=(e,t,i)=>!!samp.callNative("PlayerTextDrawBoxColor","iii",e,t,E(i)),zu=(e,t,i)=>samp.callNative("PlayerTextDrawSetShadow","iii",e,t,i),$u=(e,t,i)=>samp.callNative("PlayerTextDrawSetOutline","iii",e,t,i),Ju=(e,t,i)=>!!samp.callNative("PlayerTextDrawBackgroundColor","iii",e,t,E(i)),Qu=(e,t,i)=>samp.callNative("PlayerTextDrawFont","iii",e,t,i),qu=(e,t,i)=>samp.callNative("PlayerTextDrawSetProportional","iii",e,t,i),em=(e,t,i)=>samp.callNative("PlayerTextDrawSetSelectable","iii",e,t,i),tm=(e,t)=>samp.callNative("PlayerTextDrawShow","ii",e,t),im=(e,t)=>samp.callNative("PlayerTextDrawHide","ii",e,t),am=(e,t,i)=>samp.callNative("PlayerTextDrawSetString","iia",e,t,i),nm=(e,t,i)=>samp.callNative("PlayerTextDrawSetPreviewModel","iii",e,t,i),rm=(e,t,i,a,n,r)=>samp.callNative("PlayerTextDrawSetPreviewRot","iiffff",e,t,i,a,n,r),sm=(e,t,i,a)=>!!samp.callNative("PlayerTextDrawSetPreviewVehCol","iiii",e,t,i,a),lm=(e,t)=>!!samp.callNative("EditAttachedObject","ii",e,t),om=e=>!!samp.callNative("BeginObjectSelecting","i",e),dm=e=>!!samp.callNative("EndObjectEditing","i",e),cm=e=>!!samp.callNative("SetObjectsDefaultCameraCol","i",e),_m=(e,t,i,a,n)=>samp.callNative("AddSimpleModel","iiiss",e,t,i,a,n),hm=(e,t,i,a,n,r,s)=>samp.callNative("AddSimpleModelTimed","iiissii",e,t,i,a,n,r,s),um=(e,t)=>samp.callNative("RedirectDownload","is",e,t),mm=e=>{const[t,i]=samp.callNative("FindModelFileNameFromCRC","iSi",e,255);return{name:t,ret:i}},pm=e=>{const[t,i]=samp.callNative("FindTextureFileNameFromCRC","iSi",e,255);return{name:t,ret:i}},fm=(e,t)=>{const[i=0,a=0,n=0,r=0,s=0,l=0,o=0,d=0,c=0,h=0,p=0,g=0,f=0,y]=samp.callNative("GetPlayerAttachedObject","iiIIFFFFFFFFFII",e,t);return{modelId:i,bone:a,fX:n,fY:r,fZ:s,fRotX:l,fRotY:o,fRotZ:d,fScaleX:c,fScaleY:h,fScaleZ:p,materialColor1:g,materialColor2:f,ret:y}},gm=(e,t,i,a,n,r,s,l,o,d,c,h,p,g,f)=>samp.callNative("SetPlayerAttachedObject","iiiifffffffffii",e,t,i,a,n,r,s,l,o,d,c,h,p,E(g),E(f)),Pm=(e,t)=>samp.callNative("RemovePlayerAttachedObject","ii",e,t),Sm=(e,t)=>!!samp.callNative("IsPlayerAttachedObjectSlotUsed","ii",e,t),ai=e=>!!samp.callNative("IsValidCustomModel","i",e),ym=e=>{if(!ai(e))return null;const[t,i,a]=samp.callNative("GetCustomModePath","iSiSi",e,255,255);return{dffPath:t,txdPath:i,ret:a}},ni=new Map([["AIRPORT",[{n:"thrw_barl_thrw",d:2}]],["ATTRACTORS",[{n:"Stepsit_in",d:1.67},{n:"Stepsit_loop",d:3.33},{n:"Stepsit_out",d:1.67}]],["BAR",[{n:"Barcustom_get",d:3},{n:"Barcustom_loop",d:2},{n:"Barcustom_order",d:3.67},{n:"BARman_idle",d:8.33},{n:"Barserve_bottle",d:3},{n:"Barserve_give",d:2.33},{n:"Barserve_glass",d:3.67},{n:"Barserve_in",d:1.67},{n:"Barserve_loop",d:2.33},{n:"Barserve_order",d:3.67},{n:"dnk_stndF_loop",d:2.33},{n:"dnk_stndM_loop",d:2.33}]],["BASEBALL",[{n:"Bat_1",d:.9},{n:"Bat_2",d:1.13},{n:"Bat_3",d:1.2},{n:"Bat_4",d:1},{n:"Bat_block",d:.47},{n:"Bat_Hit_1",d:.83},{n:"Bat_Hit_2",d:1.07},{n:"Bat_Hit_3",d:1.13},{n:"Bat_IDLE",d:.93},{n:"Bat_M",d:.53},{n:"BAT_PART",d:.53}]],["BD_FIRE",[{n:"BD_Fire1",d:1.83},{n:"BD_Fire2",d:1.67},{n:"BD_Fire3",d:1.83},{n:"BD_GF_Wave",d:5.07},{n:"BD_Panic_01",d:3.33},{n:"BD_Panic_02",d:3.33},{n:"BD_Panic_03",d:3.33},{n:"BD_Panic_04",d:3.33},{n:"BD_Panic_Loop",d:3.33},{n:"Grlfrd_Kiss_03",d:7},{n:"M_smklean_loop",d:5},{n:"Playa_Kiss_03",d:7},{n:"wash_up",d:3}]],["BEACH",[{n:"bather",d:4.2},{n:"Lay_Bac_Loop",d:2.67},{n:"ParkSit_M_loop",d:3.67},{n:"ParkSit_W_loop",d:3.33},{n:"SitnWait_loop_W",d:1.33}]],["benchpress",[{n:"gym_bp_celebrate",d:5},{n:"gym_bp_down",d:1},{n:"gym_bp_getoff",d:8.67},{n:"gym_bp_geton",d:5.33},{n:"gym_bp_up_A",d:2.33},{n:"gym_bp_up_B",d:2.67},{n:"gym_bp_up_smooth",d:1.33}]],["BF_injection",[{n:"BF_getin_LHS",d:1},{n:"BF_getin_RHS",d:1},{n:"BF_getout_LHS",d:1.13},{n:"BF_getout_RHS",d:1.13}]],["BIKED",[{n:"BIKEd_Back",d:.1},{n:"BIKEd_drivebyFT",d:.2},{n:"BIKEd_drivebyLHS",d:.2},{n:"BIKEd_drivebyRHS",d:.2},{n:"BIKEd_Fwd",d:.2},{n:"BIKEd_getoffBACK",d:1.47},{n:"BIKEd_getoffLHS",d:1},{n:"BIKEd_getoffRHS",d:1},{n:"BIKEd_hit",d:.03},{n:"BIKEd_jumponL",d:.97},{n:"BIKEd_jumponR",d:.97},{n:"BIKEd_kick",d:1.07},{n:"BIKEd_Left",d:.1},{n:"BIKEd_passenger",d:.03},{n:"BIKEd_pushes",d:.8},{n:"BIKEd_Ride",d:.03},{n:"BIKEd_Right",d:.1},{n:"BIKEd_shuffle",d:.43},{n:"BIKEd_Still",d:.03}]],["BIKEH",[{n:"BIKEh_Back",d:.1},{n:"BIKEh_drivebyFT",d:.2},{n:"BIKEh_drivebyLHS",d:.2},{n:"BIKEh_drivebyRHS",d:.2},{n:"BIKEh_Fwd",d:.2},{n:"BIKEh_getoffBACK",d:1.7},{n:"BIKEh_getoffLHS",d:.77},{n:"BIKEh_getoffRHS",d:.73},{n:"BIKEh_hit",d:.03},{n:"BIKEh_jumponL",d:1.47},{n:"BIKEh_jumponR",d:1.5},{n:"BIKEh_kick",d:1.07},{n:"BIKEh_Left",d:.13},{n:"BIKEh_passenger",d:.03},{n:"BIKEh_pushes",d:.97},{n:"BIKEh_Ride",d:.03},{n:"BIKEh_Right",d:.13},{n:"BIKEh_Still",d:.03}]],["BIKELEAP",[{n:"bk_blnce_in",d:1.9},{n:"bk_blnce_out",d:1},{n:"bk_jmp",d:.4},{n:"bk_rdy_in",d:.5},{n:"bk_rdy_out",d:.4},{n:"struggle_cesar",d:.47},{n:"struggle_driver",d:.47},{n:"truck_driver",d:.73},{n:"truck_getin",d:2.5}]],["BIKES",[{n:"BIKEs_Back",d:.1},{n:"BIKEs_drivebyFT",d:.2},{n:"BIKEs_drivebyLHS",d:.2},{n:"BIKEs_drivebyRHS",d:.2},{n:"BIKEs_Fwd",d:.2},{n:"BIKEs_getoffBACK",d:2.43},{n:"BIKEs_getoffLHS",d:1.1},{n:"BIKEs_getoffRHS",d:1.1},{n:"BIKEs_hit",d:.03},{n:"BIKEs_jumponL",d:.9},{n:"BIKEs_jumponR",d:.9},{n:"BIKEs_kick",d:1},{n:"BIKEs_Left",d:.1},{n:"BIKEs_passenger",d:.03},{n:"BIKEs_pushes",d:.73},{n:"BIKEs_Ride",d:.03},{n:"BIKEs_Right",d:.1},{n:"BIKEs_Snatch_L",d:.43},{n:"BIKEs_Snatch_R",d:.43},{n:"BIKEs_Still",d:.03}]],["BIKEV",[{n:"BIKEv_Back",d:.17},{n:"BIKEv_drivebyFT",d:.17},{n:"BIKEv_drivebyLHS",d:.23},{n:"BIKEv_drivebyRHS",d:.2},{n:"BIKEv_Fwd",d:.2},{n:"BIKEv_getoffBACK",d:1.7},{n:"BIKEv_getoffLHS",d:.67},{n:"BIKEv_getoffRHS",d:.67},{n:"BIKEv_hit",d:.03},{n:"BIKEv_jumponL",d:.67},{n:"BIKEv_jumponR",d:.67},{n:"BIKEv_kick",d:1},{n:"BIKEv_Left",d:.1},{n:"BIKEv_passenger",d:.03},{n:"BIKEv_pushes",d:.73},{n:"BIKEv_Ride",d:.03},{n:"BIKEv_Right",d:.1},{n:"BIKEv_Still",d:.03}]],["BIKE_DBZ",[{n:"Pass_Driveby_BWD",d:.83},{n:"Pass_Driveby_FWD",d:.83},{n:"Pass_Driveby_LHS",d:.83},{n:"Pass_Driveby_RHS",d:.83}]],["BLOWJOBZ",[{n:"BJ_Car_End_P",d:4.13},{n:"BJ_Car_End_W",d:3.67},{n:"BJ_Car_Loop_P",d:.67},{n:"BJ_Car_Loop_W",d:.67},{n:"BJ_Car_Start_P",d:2.33},{n:"BJ_Car_Start_W",d:2.33},{n:"BJ_Couch_End_P",d:7.67},{n:"BJ_Couch_End_W",d:7.67},{n:"BJ_Couch_Loop_P",d:2},{n:"BJ_Couch_Loop_W",d:2},{n:"BJ_Couch_Start_P",d:5.33},{n:"BJ_Couch_Start_W",d:5.33},{n:"BJ_Stand_End_P",d:4.87},{n:"BJ_Stand_End_W",d:5.33},{n:"BJ_Stand_Loop_P",d:.67},{n:"BJ_Stand_Loop_W",d:.67},{n:"BJ_Stand_Start_P",d:2},{n:"BJ_Stand_Start_W",d:2}]],["BMX",[{n:"BMX_back",d:.1},{n:"BMX_bunnyhop",d:.33},{n:"BMX_drivebyFT",d:.2},{n:"BMX_driveby_LHS",d:.2},{n:"BMX_driveby_RHS",d:.2},{n:"BMX_fwd",d:.13},{n:"BMX_getoffBACK",d:1.37},{n:"BMX_getoffLHS",d:.73},{n:"BMX_getoffRHS",d:.63},{n:"BMX_jumponL",d:.9},{n:"BMX_jumponR",d:.9},{n:"BMX_Left",d:.13},{n:"BMX_pedal",d:.73},{n:"BMX_pushes",d:.8},{n:"BMX_Ride",d:.03},{n:"BMX_Right",d:.13},{n:"BMX_sprint",d:.67},{n:"BMX_still",d:.03}]],["BOMBER",[{n:"BOM_Plant",d:2.67},{n:"BOM_Plant_2Idle",d:1},{n:"BOM_Plant_Crouch_In",d:.8},{n:"BOM_Plant_Crouch_Out",d:.8},{n:"BOM_Plant_In",d:.87},{n:"BOM_Plant_Loop",d:.8}]],["BOX",[{n:"boxhipin",d:6.53},{n:"boxhipup",d:5},{n:"boxshdwn",d:6.1},{n:"boxshup",d:5.2},{n:"bxhipwlk",d:1.5},{n:"bxhwlki",d:.97},{n:"bxshwlk",d:2.5},{n:"bxshwlki",d:.97},{n:"bxwlko",d:.53},{n:"catch_box",d:1.5}]],["BSKTBALL",[{n:"BBALL_def_jump_shot",d:1.17},{n:"BBALL_def_loop",d:1},{n:"BBALL_def_stepL",d:.6},{n:"BBALL_def_stepR",d:.6},{n:"BBALL_Dnk",d:1.4},{n:"BBALL_Dnk_Gli",d:.37},{n:"BBALL_Dnk_Gli_O",d:.37},{n:"BBALL_Dnk_Lnch",d:.2},{n:"BBALL_Dnk_Lnch_O",d:.2},{n:"BBALL_Dnk_Lnd",d:.93},{n:"BBALL_Dnk_O",d:.1},{n:"BBALL_idle",d:2.43},{n:"BBALL_idle2",d:2.67},{n:"BBALL_idle2_O",d:2.67},{n:"BBALL_idleloop",d:.67},{n:"BBALL_idleloop_O",d:.67},{n:"BBALL_idle_O",d:2.43},{n:"BBALL_Jump_Cancel",d:1.07},{n:"BBALL_Jump_Cancel_O",d:1.07},{n:"BBALL_Jump_End",d:.93},{n:"BBALL_Jump_Shot",d:1.67},{n:"BBALL_Jump_Shot_O",d:.67},{n:"BBALL_Net_Dnk_O",d:1.83},{n:"BBALL_pickup",d:1.83},{n:"BBALL_pickup_O",d:1.83},{n:"BBALL_react_miss",d:.8},{n:"BBALL_react_score",d:1.1},{n:"BBALL_run",d:.9},{n:"BBALL_run_O",d:.9},{n:"BBALL_SkidStop_L",d:.5},{n:"BBALL_SkidStop_L_O",d:.5},{n:"BBALL_SkidStop_R",d:.5},{n:"BBALL_SkidStop_R_O",d:.5},{n:"BBALL_walk",d:1.07},{n:"BBALL_WalkStop_L",d:.5},{n:"BBALL_WalkStop_L_O",d:.5},{n:"BBALL_WalkStop_R",d:.5},{n:"BBALL_WalkStop_R_O",d:.5},{n:"BBALL_walk_O",d:1.07},{n:"BBALL_walk_start",d:.2},{n:"BBALL_walk_start_O",d:.2}]],["BUDDY",[{n:"buddy_crouchfire",d:.87},{n:"buddy_crouchreload",d:1.1},{n:"buddy_fire",d:.8},{n:"buddy_fire_poor",d:1.33},{n:"buddy_reload",d:1.3}]],["BUS",[{n:"BUS_close",d:.4},{n:"BUS_getin_LHS",d:.33},{n:"BUS_getin_RHS",d:2.17},{n:"BUS_getout_LHS",d:.8},{n:"BUS_getout_RHS",d:1.87},{n:"BUS_jacked_LHS",d:1.13},{n:"BUS_open",d:1.47},{n:"BUS_open_RHS",d:1.2},{n:"BUS_pullout_LHS",d:.8}]],["CAMERA",[{n:"camcrch_cmon",d:2.33},{n:"camcrch_idleloop",d:2},{n:"camcrch_stay",d:2},{n:"camcrch_to_camstnd",d:1.33},{n:"camstnd_cmon",d:3},{n:"camstnd_idleloop",d:2},{n:"camstnd_lkabt",d:4.33},{n:"camstnd_to_camcrch",d:1},{n:"piccrch_in",d:1.33},{n:"piccrch_out",d:2},{n:"piccrch_take",d:1},{n:"picstnd_in",d:1},{n:"picstnd_out",d:.67},{n:"picstnd_take",d:1}]],["CAR",[{n:"Fixn_Car_Loop",d:5},{n:"Fixn_Car_Out",d:2.33},{n:"flag_drop",d:4.5},{n:"Sit_relaxed",d:.03},{n:"Tap_hand",d:.33},{n:"Tyd2car_bump",d:.83},{n:"Tyd2car_high",d:8},{n:"Tyd2car_low",d:6.67},{n:"Tyd2car_med",d:6.67},{n:"Tyd2car_TurnL",d:1},{n:"Tyd2car_TurnR",d:1}]],["CARRY",[{n:"crry_prtial",d:.03},{n:"liftup",d:1.53},{n:"liftup05",d:.63},{n:"liftup105",d:.67},{n:"putdwn",d:1.13},{n:"putdwn05",d:.67},{n:"putdwn105",d:.53}]],["CAR_CHAT",[{n:"carfone_in",d:6},{n:"carfone_loopA",d:4},{n:"carfone_loopA_to_B",d:1},{n:"carfone_loopB",d:5},{n:"carfone_loopB_to_A",d:.67},{n:"carfone_out",d:3},{n:"CAR_Sc1_BL",d:11.67},{n:"CAR_Sc1_BR",d:11.67},{n:"CAR_Sc1_FL",d:11.67},{n:"CAR_Sc1_FR",d:11.67},{n:"CAR_Sc2_FL",d:5},{n:"CAR_Sc3_BR",d:10.83},{n:"CAR_Sc3_FL",d:10.83},{n:"CAR_Sc3_FR",d:10.83},{n:"CAR_Sc4_BL",d:4.4},{n:"CAR_Sc4_BR",d:6.53},{n:"CAR_Sc4_FL",d:10},{n:"CAR_Sc4_FR",d:10},{n:"car_talkm_in",d:1.67},{n:"car_talkm_loop",d:4.33},{n:"car_talkm_out",d:7.33}]],["CASINO",[{n:"cards_in",d:.67},{n:"cards_loop",d:3.33},{n:"cards_lose",d:3.33},{n:"cards_out",d:.67},{n:"cards_pick_01",d:4.67},{n:"cards_pick_02",d:5.33},{n:"cards_raise",d:1.67},{n:"cards_win",d:3},{n:"dealone",d:.8},{n:"manwinb",d:1.5},{n:"manwind",d:1.67},{n:"Roulette_bet",d:2.33},{n:"Roulette_in",d:.67},{n:"Roulette_loop",d:3.67},{n:"Roulette_lose",d:2.67},{n:"Roulette_out",d:.67},{n:"Roulette_win",d:2.33},{n:"Slot_bet_01",d:4.67},{n:"Slot_bet_02",d:2},{n:"Slot_in",d:3.67},{n:"Slot_lose_out",d:4},{n:"Slot_Plyr",d:1.33},{n:"Slot_wait",d:3.67},{n:"Slot_win_out",d:9.33},{n:"wof",d:1.47}]],["CHAINSAW",[{n:"CSAW_1",d:1},{n:"CSAW_2",d:1.03},{n:"CSAW_3",d:.87},{n:"CSAW_G",d:1.17},{n:"CSAW_Hit_1",d:.83},{n:"CSAW_Hit_2",d:1.07},{n:"CSAW_Hit_3",d:1.13},{n:"csaw_part",d:.13},{n:"IDLE_csaw",d:1.5},{n:"WEAPON_csaw",d:1.33},{n:"WEAPON_csawlo",d:1.9}]],["CHOPPA",[{n:"CHOPPA_back",d:.1},{n:"CHOPPA_bunnyhop",d:.33},{n:"CHOPPA_drivebyFT",d:.2},{n:"CHOPPA_driveby_LHS",d:.2},{n:"CHOPPA_driveby_RHS",d:.2},{n:"CHOPPA_fwd",d:.2},{n:"CHOPPA_getoffBACK",d:1.27},{n:"CHOPPA_getoffLHS",d:.73},{n:"CHOPPA_getoffRHS",d:.63},{n:"CHOPPA_jumponL",d:.7},{n:"CHOPPA_jumponR",d:.8},{n:"CHOPPA_Left",d:.13},{n:"CHOPPA_pedal",d:.73},{n:"CHOPPA_Pushes",d:.8},{n:"CHOPPA_ride",d:.03},{n:"CHOPPA_Right",d:.13},{n:"CHOPPA_sprint",d:.67},{n:"CHOPPA_Still",d:.03}]],["CLOTHES",[{n:"CLO_Buy",d:2.07},{n:"CLO_In",d:4},{n:"CLO_Out",d:2.67},{n:"CLO_Pose_Hat",d:3.33},{n:"CLO_Pose_In",d:3.13},{n:"CLO_Pose_In_O",d:4},{n:"CLO_Pose_Legs",d:3.33},{n:"CLO_Pose_Loop",d:6},{n:"CLO_Pose_Out",d:4},{n:"CLO_Pose_Out_O",d:4},{n:"CLO_Pose_Shoes",d:3.33},{n:"CLO_Pose_Torso",d:3.33},{n:"CLO_Pose_Watch",d:3.33}]],["COACH",[{n:"COACH_inL",d:2.17},{n:"COACH_inR",d:2.2},{n:"COACH_opnL",d:1.2},{n:"COACH_opnR",d:1.2},{n:"COACH_outL",d:1.73},{n:"COACH_outR",d:1.83}]],["COLT45",[{n:"2guns_crouchfire",d:.8},{n:"colt45_crouchfire",d:.8},{n:"colt45_crouchreload",d:1},{n:"colt45_fire",d:.73},{n:"colt45_fire_2hands",d:.87},{n:"colt45_reload",d:.93},{n:"sawnoff_reload",d:.93}]],["COP_AMBIENT",[{n:"Copbrowse_in",d:5},{n:"Copbrowse_loop",d:2.33},{n:"Copbrowse_nod",d:4},{n:"Copbrowse_out",d:2.67},{n:"Copbrowse_shake",d:1.83},{n:"Coplook_in",d:1.33},{n:"Coplook_loop",d:2.67},{n:"Coplook_nod",d:5.33},{n:"Coplook_out",d:.67},{n:"Coplook_shake",d:4},{n:"Coplook_think",d:3.33},{n:"Coplook_watch",d:2}]],["COP_DVBYZ",[{n:"COP_Dvby_B",d:.83},{n:"COP_Dvby_FT",d:.83},{n:"COP_Dvby_L",d:.83},{n:"COP_Dvby_R",d:.83}]],["CRACK",[{n:"Bbalbat_Idle_01",d:6.67},{n:"Bbalbat_Idle_02",d:10},{n:"crckdeth1",d:2.17},{n:"crckdeth2",d:3},{n:"crckdeth3",d:2.17},{n:"crckdeth4",d:1.67},{n:"crckidle1",d:3.5},{n:"crckidle2",d:3.33},{n:"crckidle3",d:3.33},{n:"crckidle4",d:2.67}]],["CRIB",[{n:"CRIB_Console_Loop",d:3},{n:"CRIB_Use_Switch",d:1.17},{n:"PED_Console_Loop",d:3},{n:"PED_Console_Loose",d:3.5},{n:"PED_Console_Win",d:3.5}]],["DAM_JUMP",[{n:"DAM_Dive_Loop",d:1.33},{n:"DAM_Land",d:2.6},{n:"DAM_Launch",d:2.4},{n:"Jump_Roll",d:3.17},{n:"SF_JumpWall",d:3}]],["DANCING",[{n:"bd_clap",d:3.2},{n:"bd_clap1",d:2.63},{n:"dance_loop",d:1.17},{n:"DAN_Down_A",d:1},{n:"DAN_Left_A",d:1},{n:"DAN_Loop_A",d:2},{n:"DAN_Right_A",d:1},{n:"DAN_Up_A",d:1},{n:"dnce_M_a",d:2.13},{n:"dnce_M_b",d:1.93},{n:"dnce_M_c",d:1.93},{n:"dnce_M_d",d:2.43},{n:"dnce_M_e",d:.9}]],["DEALER",[{n:"DEALER_DEAL",d:3.17},{n:"DEALER_IDLE",d:6.67},{n:"DEALER_IDLE_01",d:5},{n:"DEALER_IDLE_02",d:4},{n:"DEALER_IDLE_03",d:4.67},{n:"DRUGS_BUY",d:3.17},{n:"shop_pay",d:4.67}]],["DILDO",[{n:"DILDO_1",d:.97},{n:"DILDO_2",d:1.1},{n:"DILDO_3",d:1.17},{n:"DILDO_block",d:.47},{n:"DILDO_G",d:1.47},{n:"DILDO_Hit_1",d:.77},{n:"DILDO_Hit_2",d:1.03},{n:"DILDO_Hit_3",d:.9},{n:"DILDO_IDLE",d:.87}]],["DODGE",[{n:"Cover_Dive_01",d:6},{n:"Cover_Dive_02",d:6},{n:"Crushed",d:.93},{n:"Crush_Jump",d:3.17}]],["DOZER",[{n:"DOZER_Align_LHS",d:.97},{n:"DOZER_Align_RHS",d:.93},{n:"DOZER_getin_LHS",d:.43},{n:"DOZER_getin_RHS",d:.43},{n:"DOZER_getout_LHS",d:1.07},{n:"DOZER_getout_RHS",d:.77},{n:"DOZER_Jacked_LHS",d:1.27},{n:"DOZER_Jacked_RHS",d:1.07},{n:"DOZER_pullout_LHS",d:.73},{n:"DOZER_pullout_RHS",d:.7}]],["DRIVEBYS",[{n:"Gang_DrivebyLHS",d:.83},{n:"Gang_DrivebyLHS_Bwd",d:.83},{n:"Gang_DrivebyLHS_Fwd",d:.83},{n:"Gang_DrivebyRHS",d:.83},{n:"Gang_DrivebyRHS_Bwd",d:.83},{n:"Gang_DrivebyRHS_Fwd",d:.83},{n:"Gang_DrivebyTop_LHS",d:.83},{n:"Gang_DrivebyTop_RHS",d:.83}]],["FAT",[{n:"FatIdle",d:1.5},{n:"FatIdle_armed",d:1.53},{n:"FatIdle_Csaw",d:1.5},{n:"FatIdle_Rocket",d:1.6},{n:"FatRun",d:.77},{n:"FatRun_armed",d:.77},{n:"FatRun_Csaw",d:.77},{n:"FatRun_Rocket",d:.77},{n:"FatSprint",d:.6},{n:"FatWalk",d:1.17},{n:"FatWalkstart",d:.2},{n:"FatWalkstart_Csaw",d:.2},{n:"FatWalkSt_armed",d:.2},{n:"FatWalkSt_Rocket",d:.2},{n:"FatWalk_armed",d:1.17},{n:"FatWalk_Csaw",d:1.17},{n:"FatWalk_Rocket",d:1.17},{n:"IDLE_tired",d:1.07}]],["FIGHT_B",[{n:"FightB_1",d:.73},{n:"FightB_2",d:1.1},{n:"FightB_3",d:1.2},{n:"FightB_block",d:.47},{n:"FightB_G",d:1.07},{n:"FightB_IDLE",d:.8},{n:"FightB_M",d:.5},{n:"HitB_1",d:.73},{n:"HitB_2",d:.83},{n:"HitB_3",d:1.43}]],["FIGHT_C",[{n:"FightC_1",d:.83},{n:"FightC_2",d:1.03},{n:"FightC_3",d:1},{n:"FightC_block",d:.47},{n:"FightC_blocking",d:3.2},{n:"FightC_G",d:.77},{n:"FightC_IDLE",d:1},{n:"FightC_M",d:.9},{n:"FightC_Spar",d:3.2},{n:"HitC_1",d:.3},{n:"HitC_2",d:.67},{n:"HitC_3",d:.83}]],["FIGHT_D",[{n:"FightD_1",d:.93},{n:"FightD_2",d:1.87},{n:"FightD_3",d:.9},{n:"FightD_block",d:.47},{n:"FightD_G",d:.83},{n:"FightD_IDLE",d:1.53},{n:"FightD_M",d:1.07},{n:"HitD_1",d:.67},{n:"HitD_2",d:1.83},{n:"HitD_3",d:.97}]],["FIGHT_E",[{n:"FightKick",d:.77},{n:"FightKick_B",d:1.03},{n:"Hit_fightkick",d:.5},{n:"Hit_fightkick_B",d:1.13}]],["FINALE",[{n:"FIN_Climb_In",d:2.9},{n:"FIN_Cop1_ClimbOut2",d:6},{n:"FIN_Cop1_Loop",d:2},{n:"FIN_Cop1_Stomp",d:1},{n:"FIN_Hang_L",d:.57},{n:"FIN_Hang_Loop",d:4},{n:"FIN_Hang_R",d:.57},{n:"FIN_Hang_Slip",d:3.33},{n:"FIN_Jump_On",d:5.6},{n:"FIN_Land_Car",d:.67},{n:"FIN_Land_Die",d:2.37},{n:"FIN_LegsUp",d:1},{n:"FIN_LegsUp_L",d:.5},{n:"FIN_LegsUp_Loop",d:1.33},{n:"FIN_LegsUp_R",d:.5},{n:"FIN_Let_Go",d:.17}]],["FINALE2",[{n:"FIN_Cop1_ClimbOut",d:4},{n:"FIN_Cop1_Fall",d:.43},{n:"FIN_Cop1_Loop",d:2},{n:"FIN_Cop1_Shot",d:2.07},{n:"FIN_Cop1_Swing",d:1.17},{n:"FIN_Cop2_ClimbOut",d:5.33},{n:"FIN_Switch_P",d:3.97},{n:"FIN_Switch_S",d:2.17}]],["FLAME",[{n:"FLAME_fire",d:.8}]],["Flowers",[{n:"Flower_attack",d:.8},{n:"Flower_attack_M",d:1.23},{n:"Flower_Hit",d:.83}]],["FOOD",[{n:"EAT_Burger",d:5},{n:"EAT_Chicken",d:5},{n:"EAT_Pizza",d:5},{n:"EAT_Vomit_P",d:8},{n:"EAT_Vomit_SK",d:8},{n:"FF_Dam_Bkw",d:.67},{n:"FF_Dam_Fwd",d:.67},{n:"FF_Dam_Left",d:.67},{n:"FF_Dam_Right",d:.67},{n:"FF_Die_Bkw",d:.67},{n:"FF_Die_Fwd",d:.67},{n:"FF_Die_Left",d:.67},{n:"FF_Die_Right",d:.67},{n:"FF_Sit_Eat1",d:2.83},{n:"FF_Sit_Eat2",d:2.67},{n:"FF_Sit_Eat3",d:2.67},{n:"FF_Sit_In",d:3},{n:"FF_Sit_In_L",d:2},{n:"FF_Sit_In_R",d:2},{n:"FF_Sit_Look",d:8},{n:"FF_Sit_Loop",d:2.67},{n:"FF_Sit_Out_180",d:2.83},{n:"FF_Sit_Out_L_180",d:1.33},{n:"FF_Sit_Out_R_180",d:1.33},{n:"SHP_Thank",d:1.17},{n:"SHP_Tray_In",d:.67},{n:"SHP_Tray_Lift",d:1.67},{n:"SHP_Tray_Lift_In",d:.5},{n:"SHP_Tray_Lift_Loop",d:8},{n:"SHP_Tray_Lift_Out",d:.5},{n:"SHP_Tray_Out",d:.67},{n:"SHP_Tray_Pose",d:.67},{n:"SHP_Tray_Return",d:1.33}]],["Freeweights",[{n:"gym_barbell",d:2.37},{n:"gym_free_A",d:1.93},{n:"gym_free_B",d:2.33},{n:"gym_free_celebrate",d:3.33},{n:"gym_free_down",d:.57},{n:"gym_free_loop",d:.67},{n:"gym_free_pickup",d:3.17},{n:"gym_free_putdown",d:3.17},{n:"gym_free_up_smooth",d:1}]],["GANGS",[{n:"DEALER_DEAL",d:1.17},{n:"DEALER_IDLE",d:2},{n:"drnkbr_prtl",d:2.67},{n:"drnkbr_prtl_F",d:2.67},{n:"DRUGS_BUY",d:1.17},{n:"hndshkaa",d:4},{n:"hndshkba",d:2.33},{n:"hndshkca",d:3.33},{n:"hndshkcb",d:3.33},{n:"hndshkda",d:2},{n:"hndshkea",d:1},{n:"hndshkfa",d:4.17},{n:"hndshkfa_swt",d:4.17},{n:"Invite_No",d:3.33},{n:"Invite_Yes",d:4.33},{n:"leanIDLE",d:1},{n:"leanIN",d:1},{n:"leanOUT",d:1},{n:"prtial_gngtlkA",d:4},{n:"prtial_gngtlkB",d:6.17},{n:"prtial_gngtlkC",d:7.33},{n:"prtial_gngtlkD",d:3},{n:"prtial_gngtlkE",d:2.83},{n:"prtial_gngtlkF",d:5.17},{n:"prtial_gngtlkG",d:7},{n:"prtial_gngtlkH",d:6},{n:"prtial_hndshk_01",d:1.67},{n:"prtial_hndshk_biz_01",d:2.33},{n:"shake_cara",d:1.67},{n:"shake_carK",d:1.27},{n:"shake_carSH",d:1.5},{n:"smkcig_prtl",d:7.5},{n:"smkcig_prtl_F",d:7.5}]],["GFUNK",[{n:"Dance_B1",d:1.27},{n:"Dance_B2",d:1.27},{n:"Dance_B3",d:1.27},{n:"Dance_B4",d:1.27},{n:"Dance_B5",d:1.27},{n:"Dance_B6",d:1.27},{n:"Dance_B7",d:1.27},{n:"Dance_B8",d:1.27},{n:"Dance_B9",d:1.27},{n:"Dance_B10",d:1.27},{n:"Dance_B11",d:1.27},{n:"Dance_B12",d:1.27},{n:"Dance_B13",d:1.27},{n:"Dance_B14",d:1.27},{n:"Dance_B15",d:1.27},{n:"Dance_B16",d:1.27},{n:"Dance_G1",d:1.27},{n:"Dance_G2",d:1.27},{n:"Dance_G3",d:1.27},{n:"Dance_G4",d:1.27},{n:"Dance_G5",d:1.27},{n:"Dance_G6",d:1.27},{n:"Dance_G7",d:1.27},{n:"Dance_G8",d:1.27},{n:"Dance_G9",d:1.27},{n:"Dance_G10",d:1.27},{n:"Dance_G11",d:1.27},{n:"Dance_G12",d:1.27},{n:"Dance_G13",d:1.27},{n:"Dance_G14",d:1.27},{n:"Dance_G15",d:1.27},{n:"Dance_G16",d:1.27},{n:"dance_loop",d:1.17}]],["GHANDS",[{n:"gsign1",d:4.77},{n:"gsign1LH",d:2.73},{n:"gsign2",d:2.13},{n:"gsign2LH",d:2.33},{n:"gsign3",d:4.67},{n:"gsign3LH",d:2},{n:"gsign4",d:4.17},{n:"gsign4LH",d:4.67},{n:"gsign5",d:6.2},{n:"gsign5LH",d:2},{n:"LHGsign1",d:2},{n:"LHGsign2",d:2},{n:"LHGsign3",d:2},{n:"LHGsign4",d:2},{n:"LHGsign5",d:2},{n:"RHGsign1",d:2},{n:"RHGsign2",d:2},{n:"RHGsign3",d:2},{n:"RHGsign4",d:2},{n:"RHGsign5",d:2}]],["GHETTO_DB",[{n:"GDB_Car2_PLY",d:9.5},{n:"GDB_Car2_SMO",d:9.5},{n:"GDB_Car2_SWE",d:9.5},{n:"GDB_Car_PLY",d:13.33},{n:"GDB_Car_RYD",d:13.33},{n:"GDB_Car_SMO",d:13.33},{n:"GDB_Car_SWE",d:13.33}]],["goggles",[{n:"goggles_put_on",d:.8}]],["GRAFFITI",[{n:"graffiti_Chkout",d:4.67},{n:"spraycan_fire",d:2.33}]],["GRAVEYARD",[{n:"mrnF_loop",d:4.67},{n:"mrnM_loop",d:2.67},{n:"prst_loopa",d:4}]],["GRENADE",[{n:"WEAPON_start_throw",d:.2},{n:"WEAPON_throw",d:.87},{n:"WEAPON_throwu",d:.67}]],["GYMNASIUM",[{n:"GYMshadowbox",d:5.1},{n:"gym_bike_celebrate",d:1.93},{n:"gym_bike_fast",d:.4},{n:"gym_bike_faster",d:.4},{n:"gym_bike_getoff",d:1.67},{n:"gym_bike_geton",d:1.67},{n:"gym_bike_pedal",d:.4},{n:"gym_bike_slow",d:.43},{n:"gym_bike_still",d:1.67},{n:"gym_jog_falloff",d:2.17},{n:"gym_shadowbox",d:5.1},{n:"gym_tread_celebrate",d:2.5},{n:"gym_tread_falloff",d:2},{n:"gym_tread_getoff",d:3.33},{n:"gym_tread_geton",d:2.5},{n:"gym_tread_jog",d:.77},{n:"gym_tread_sprint",d:.67},{n:"gym_tread_tired",d:1.33},{n:"gym_tread_walk",d:1.07},{n:"gym_walk_falloff",d:3.33},{n:"Pedals_fast",d:.4},{n:"Pedals_med",d:.4},{n:"Pedals_slow",d:.43},{n:"Pedals_still",d:.43}]],["HAIRCUTS",[{n:"BRB_Beard_01",d:4.5},{n:"BRB_Buy",d:4.17},{n:"BRB_Cut",d:1.7},{n:"BRB_Cut_In",d:.83},{n:"BRB_Cut_Out",d:1.33},{n:"BRB_Hair_01",d:3.83},{n:"BRB_Hair_02",d:4.5},{n:"BRB_In",d:1.33},{n:"BRB_Loop",d:2.67},{n:"BRB_Out",d:.67},{n:"BRB_Sit_In",d:2.07},{n:"BRB_Sit_Loop",d:7},{n:"BRB_Sit_Out",d:3}]],["HEIST9",[{n:"CAS_G2_GasKO",d:3.33},{n:"swt_wllpk_L",d:2.67},{n:"swt_wllpk_L_back",d:.5},{n:"swt_wllpk_R",d:3.67},{n:"swt_wllpk_R_back",d:.43},{n:"swt_wllshoot_in_L",d:1},{n:"swt_wllshoot_in_R",d:1.3},{n:"swt_wllshoot_out_L",d:2},{n:"swt_wllshoot_out_R",d:1.43},{n:"Use_SwipeCard",d:1.17}]],["INT_HOUSE",[{n:"BED_In_L",d:3.33},{n:"BED_In_R",d:3.33},{n:"BED_Loop_L",d:3.33},{n:"BED_Loop_R",d:3.33},{n:"BED_Out_L",d:3.33},{n:"BED_Out_R",d:3.33},{n:"LOU_In",d:1.83},{n:"LOU_Loop",d:3.33},{n:"LOU_Out",d:2},{n:"wash_up",d:3}]],["INT_OFFICE",[{n:"FF_Dam_Fwd",d:.67},{n:"OFF_Sit_2Idle_180",d:2.83},{n:"OFF_Sit_Bored_Loop",d:2.83},{n:"OFF_Sit_Crash",d:3.33},{n:"OFF_Sit_Drink",d:4.17},{n:"OFF_Sit_Idle_Loop",d:2.07},{n:"OFF_Sit_In",d:2.77},{n:"OFF_Sit_Read",d:3.33},{n:"OFF_Sit_Type_Loop",d:3.33},{n:"OFF_Sit_Watch",d:2}]],["INT_SHOP",[{n:"shop_cashier",d:6.67},{n:"shop_in",d:1},{n:"shop_lookA",d:2},{n:"shop_lookB",d:3},{n:"shop_loop",d:2},{n:"shop_out",d:1.33},{n:"shop_pay",d:6.67},{n:"shop_shelf",d:2.33}]],["JST_BUISNESS",[{n:"girl_01",d:3.33},{n:"girl_02",d:11.33},{n:"player_01",d:24.83},{n:"smoke_01",d:25}]],["KART",[{n:"KART_getin_LHS",d:.83},{n:"KART_getin_RHS",d:.83},{n:"KART_getout_LHS",d:.83},{n:"KART_getout_RHS",d:.83}]],["KISSING",[{n:"BD_GF_Wave",d:5.07},{n:"gfwave2",d:2.67},{n:"GF_CarArgue_01",d:5},{n:"GF_CarArgue_02",d:5},{n:"GF_CarSpot",d:5},{n:"GF_StreetArgue_01",d:5},{n:"GF_StreetArgue_02",d:5},{n:"gift_get",d:5.33},{n:"gift_give",d:5.33},{n:"Grlfrd_Kiss_01",d:4.17},{n:"Grlfrd_Kiss_02",d:5.77},{n:"Grlfrd_Kiss_03",d:7},{n:"Playa_Kiss_01",d:5},{n:"Playa_Kiss_02",d:5.77},{n:"Playa_Kiss_03",d:7}]],["KNIFE",[{n:"KILL_Knife_Ped_Damage",d:2.23},{n:"KILL_Knife_Ped_Die",d:1.93},{n:"KILL_Knife_Player",d:2.67},{n:"KILL_Partial",d:.03},{n:"knife_1",d:1},{n:"knife_2",d:.93},{n:"knife_3",d:.87},{n:"Knife_4",d:.9},{n:"knife_block",d:.47},{n:"Knife_G",d:.9},{n:"knife_hit_1",d:.57},{n:"knife_hit_2",d:.63},{n:"knife_hit_3",d:1.6},{n:"knife_IDLE",d:1.3},{n:"knife_part",d:.53},{n:"WEAPON_knifeidle",d:1.3}]],["LAPDAN1",[{n:"LAPDAN_D",d:37.73},{n:"LAPDAN_P",d:37.73}]],["LAPDAN2",[{n:"LAPDAN_D",d:46.83},{n:"LAPDAN_P",d:46.83}]],["LAPDAN3",[{n:"LAPDAN_D",d:51.47},{n:"LAPDAN_P",d:51.47}]],["LOWRIDER",[{n:"F_smklean_loop",d:4},{n:"lrgirl_bdbnce",d:2.67},{n:"lrgirl_hair",d:2.33},{n:"lrgirl_hurry",d:2.83},{n:"lrgirl_idleloop",d:2.17},{n:"lrgirl_idle_to_l0",d:2.17},{n:"lrgirl_l0_bnce",d:.67},{n:"lrgirl_l0_loop",d:2},{n:"lrgirl_l0_to_l1",d:3.67},{n:"lrgirl_l12_to_l0",d:2},{n:"lrgirl_l1_bnce",d:.67},{n:"lrgirl_l1_loop",d:2},{n:"lrgirl_l1_to_l2",d:1.33},{n:"lrgirl_l2_bnce",d:.67},{n:"lrgirl_l2_loop",d:1.5},{n:"lrgirl_l2_to_l3",d:1.5},{n:"lrgirl_l345_to_l1",d:1},{n:"lrgirl_l3_bnce",d:.67},{n:"lrgirl_l3_loop",d:2},{n:"lrgirl_l3_to_l4",d:.67},{n:"lrgirl_l4_bnce",d:.67},{n:"lrgirl_l4_loop",d:2.33},{n:"lrgirl_l4_to_l5",d:1},{n:"lrgirl_l5_bnce",d:.83},{n:"lrgirl_l5_loop",d:1.67},{n:"M_smklean_loop",d:5},{n:"M_smkstnd_loop",d:5.33},{n:"prtial_gngtlkB",d:1.47},{n:"prtial_gngtlkC",d:1.5},{n:"prtial_gngtlkD",d:2.47},{n:"prtial_gngtlkE",d:3},{n:"prtial_gngtlkF",d:2.67},{n:"prtial_gngtlkG",d:2.67},{n:"prtial_gngtlkH",d:3.33},{n:"RAP_A_Loop",d:2.67},{n:"RAP_B_Loop",d:2.67},{n:"RAP_C_Loop",d:3},{n:"Sit_relaxed",d:.03},{n:"Tap_hand",d:.33}]],["MD_CHASE",[{n:"Carhit_Hangon",d:1.53},{n:"Carhit_Tumble",d:2.03},{n:"donutdrop",d:1.5},{n:"Fen_Choppa_L1",d:1.43},{n:"Fen_Choppa_L2",d:1.3},{n:"Fen_Choppa_L3",d:1.3},{n:"Fen_Choppa_R1",d:1.3},{n:"Fen_Choppa_R2",d:1.3},{n:"Fen_Choppa_R3",d:1.3},{n:"Hangon_Stun_loop",d:4.67},{n:"Hangon_Stun_Turn",d:4},{n:"MD_BIKE_2_HANG",d:1.37},{n:"MD_BIKE_Jmp_BL",d:1.1},{n:"MD_BIKE_Jmp_F",d:1},{n:"MD_BIKE_Lnd_BL",d:.9},{n:"MD_BIKE_Lnd_Die_BL",d:1.53},{n:"MD_BIKE_Lnd_Die_F",d:.8},{n:"MD_BIKE_Lnd_F",d:1.17},{n:"MD_BIKE_Lnd_Roll",d:2.7},{n:"MD_BIKE_Lnd_Roll_F",d:1.03},{n:"MD_BIKE_Punch",d:1.83},{n:"MD_BIKE_Punch_F",d:1.83},{n:"MD_BIKE_Shot_F",d:1.33},{n:"MD_HANG_Lnd_Roll",d:2.7},{n:"MD_HANG_Loop",d:1}]],["MD_END",[{n:"END_SC1_PLY",d:5},{n:"END_SC1_RYD",d:5},{n:"END_SC1_SMO",d:5},{n:"END_SC1_SWE",d:5},{n:"END_SC2_PLY",d:9},{n:"END_SC2_RYD",d:9},{n:"END_SC2_SMO",d:9},{n:"END_SC2_SWE",d:9}]],["MEDIC",[{n:"CPR",d:8.33}]],["MISC",[{n:"bitchslap",d:1.17},{n:"BMX_celebrate",d:1.57},{n:"BMX_comeon",d:.77},{n:"bmx_idleloop_01",d:3.33},{n:"bmx_idleloop_02",d:6.67},{n:"bmx_talkleft_in",d:.67},{n:"bmx_talkleft_loop",d:6.67},{n:"bmx_talkleft_out",d:.67},{n:"bmx_talkright_in",d:.67},{n:"bmx_talkright_loop",d:7.33},{n:"bmx_talkright_out",d:.67},{n:"bng_wndw",d:7.33},{n:"bng_wndw_02",d:7.33},{n:"Case_pickup",d:1},{n:"door_jet",d:5.33},{n:"GRAB_L",d:.4},{n:"GRAB_R",d:.4},{n:"Hiker_Pose",d:.33},{n:"Hiker_Pose_L",d:.33},{n:"Idle_Chat_02",d:7.23},{n:"KAT_Throw_K",d:3.33},{n:"KAT_Throw_O",d:3.33},{n:"KAT_Throw_P",d:3.33},{n:"PASS_Rifle_O",d:1.33},{n:"PASS_Rifle_Ped",d:1.33},{n:"PASS_Rifle_Ply",d:1.33},{n:"pickup_box",d:.4},{n:"Plane_door",d:5.33},{n:"Plane_exit",d:5.33},{n:"Plane_hijack",d:5.33},{n:"Plunger_01",d:3.33},{n:"Plyrlean_loop",d:2.67},{n:"plyr_shkhead",d:1.67},{n:"Run_Dive",d:8.27},{n:"Scratchballs_01",d:8.33},{n:"SEAT_LR",d:3.67},{n:"Seat_talk_01",d:3.67},{n:"Seat_talk_02",d:3.33},{n:"SEAT_watch",d:2.33},{n:"smalplane_door",d:6.33},{n:"smlplane_door",d:5.33},{n:"MTB_back",d:.1},{n:"MTB_bunnyhop",d:.33},{n:"MTB_drivebyFT",d:.2},{n:"MTB_driveby_LHS",d:.2},{n:"MTB_driveby_RHS",d:.2},{n:"MTB_fwd",d:.2},{n:"MTB_getoffBACK",d:1.53},{n:"MTB_getoffLHS",d:.73},{n:"MTB_getoffRHS",d:.73},{n:"MTB_jumponL",d:.8},{n:"MTB_jumponR",d:.83},{n:"MTB_Left",d:.13},{n:"MTB_pedal",d:.67},{n:"MTB_pushes",d:.8},{n:"MTB_Ride",d:.03},{n:"MTB_Right",d:.13},{n:"MTB_sprint",d:.8},{n:"MTB_still",d:.03},{n:"MscleWalkst_armed",d:.2},{n:"MscleWalkst_Csaw",d:.2},{n:"Mscle_rckt_run",d:.8},{n:"Mscle_rckt_walkst",d:.2},{n:"Mscle_run_Csaw",d:.8},{n:"MuscleIdle",d:1.5},{n:"MuscleIdle_armed",d:1.5},{n:"MuscleIdle_Csaw",d:1.5},{n:"MuscleIdle_rocket",d:1.5},{n:"MuscleRun",d:.8},{n:"MuscleRun_armed",d:.8},{n:"MuscleSprint",d:.57},{n:"MuscleWalk",d:1.07},{n:"MuscleWalkstart",d:.27},{n:"MuscleWalk_armed",d:1.07},{n:"Musclewalk_Csaw",d:1.07},{n:"Musclewalk_rocket",d:1.07}]],["NEVADA",[{n:"NEVADA_getin",d:1.87},{n:"NEVADA_getout",d:.93}]],["ON_LOOKERS",[{n:"lkaround_in",d:.33},{n:"lkaround_loop",d:7},{n:"lkaround_out",d:.33},{n:"lkup_in",d:1.67},{n:"lkup_loop",d:5.33},{n:"lkup_out",d:1},{n:"lkup_point",d:3.33},{n:"panic_cower",d:6.67},{n:"panic_hide",d:6.33},{n:"panic_in",d:.83},{n:"panic_loop",d:1.67},{n:"panic_out",d:.67},{n:"panic_point",d:6},{n:"panic_shout",d:8.67},{n:"Pointup_in",d:1},{n:"Pointup_loop",d:2.67},{n:"Pointup_out",d:1},{n:"Pointup_shout",d:3},{n:"point_in",d:.5},{n:"point_loop",d:3},{n:"point_out",d:.33},{n:"shout_01",d:2.67},{n:"shout_02",d:4},{n:"shout_in",d:1.67},{n:"shout_loop",d:2},{n:"shout_out",d:.33},{n:"wave_in",d:.83},{n:"wave_loop",d:1.5},{n:"wave_out",d:.83}]],["OTB",[{n:"betslp_in",d:1.33},{n:"betslp_lkabt",d:2.67},{n:"betslp_loop",d:2.67},{n:"betslp_out",d:1},{n:"betslp_tnk",d:5.6},{n:"wtchrace_cmon",d:5},{n:"wtchrace_in",d:1.67},{n:"wtchrace_loop",d:2.67},{n:"wtchrace_lose",d:4},{n:"wtchrace_out",d:1},{n:"wtchrace_win",d:4.33}]],["PARACHUTE",[{n:"FALL_skyDive",d:1.33},{n:"FALL_SkyDive_Accel",d:1.33},{n:"FALL_skyDive_DIE",d:1},{n:"FALL_SkyDive_L",d:1.33},{n:"FALL_SkyDive_R",d:1.33},{n:"PARA_decel",d:2},{n:"PARA_decel_O",d:2},{n:"PARA_float",d:2},{n:"PARA_float_O",d:2},{n:"PARA_Land",d:1.67},{n:"PARA_Land_O",d:2.17},{n:"PARA_Land_Water",d:2.33},{n:"PARA_Land_Water_O",d:2.17},{n:"PARA_open",d:2.83},{n:"PARA_open_O",d:2.33},{n:"PARA_Rip_Land_O",d:.9},{n:"PARA_Rip_Loop_O",d:1},{n:"PARA_Rip_O",d:.23},{n:"PARA_steerL",d:2},{n:"PARA_steerL_O",d:2},{n:"PARA_steerR",d:2},{n:"PARA_steerR_O",d:2}]],["PARK",[{n:"Tai_Chi_in",d:2.17},{n:"Tai_Chi_Loop",d:12},{n:"Tai_Chi_Out",d:.83}]],["PAULNMAC",[{n:"Piss_in",d:9},{n:"Piss_loop",d:6.67},{n:"Piss_out",d:11},{n:"PnM_Argue1_A",d:4.33},{n:"PnM_Argue1_B",d:4.33},{n:"PnM_Argue2_A",d:4.33},{n:"PnM_Argue2_B",d:4.33},{n:"PnM_Loop_A",d:5.33},{n:"PnM_Loop_B",d:5.33},{n:"wank_in",d:7.33},{n:"wank_loop",d:2.67},{n:"wank_out",d:11.67}]],["PED",[{n:"abseil",d:.03},{n:"ARRESTgun",d:.67},{n:"ATM",d:12.17},{n:"BIKE_elbowL",d:.97},{n:"BIKE_elbowR",d:.97},{n:"BIKE_fallR",d:1.63},{n:"BIKE_fall_off",d:1.07},{n:"BIKE_pickupL",d:1.07},{n:"BIKE_pickupR",d:1.07},{n:"BIKE_pullupL",d:1},{n:"BIKE_pullupR",d:1},{n:"bomber",d:.6},{n:"CAR_alignHI_LHS",d:.73},{n:"CAR_alignHI_RHS",d:.73},{n:"CAR_align_LHS",d:.13},{n:"CAR_align_RHS",d:.13},{n:"CAR_closedoorL_LHS",d:.6},{n:"CAR_closedoorL_RHS",d:.4},{n:"CAR_closedoor_LHS",d:.6},{n:"CAR_closedoor_RHS",d:.4},{n:"CAR_close_LHS",d:.73},{n:"CAR_close_RHS",d:.73},{n:"CAR_crawloutRHS",d:2.17},{n:"CAR_dead_LHS",d:.03},{n:"CAR_dead_RHS",d:.03},{n:"CAR_doorlocked_LHS",d:1.33},{n:"CAR_doorlocked_RHS",d:1.27},{n:"CAR_fallout_LHS",d:.57},{n:"CAR_fallout_RHS",d:.57},{n:"CAR_getinL_LHS",d:1},{n:"CAR_getinL_RHS",d:1},{n:"CAR_getin_LHS",d:1},{n:"CAR_getin_RHS",d:1},{n:"CAR_getoutL_LHS",d:.93},{n:"CAR_getoutL_RHS",d:1},{n:"CAR_getout_LHS",d:1.13},{n:"CAR_getout_RHS",d:.8},{n:"car_hookertalk",d:4.3},{n:"CAR_jackedLHS",d:2.9},{n:"CAR_jackedRHS",d:3.43},{n:"CAR_jumpin_LHS",d:1},{n:"CAR_LB",d:.23},{n:"CAR_LB_pro",d:.1},{n:"CAR_LB_weak",d:.23},{n:"CAR_LjackedLHS",d:3.57},{n:"CAR_LjackedRHS",d:3.47},{n:"CAR_Lshuffle_RHS",d:.4},{n:"CAR_Lsit",d:.03},{n:"CAR_open_LHS",d:1.1},{n:"CAR_open_RHS",d:1.1},{n:"CAR_pulloutL_LHS",d:2.93},{n:"CAR_pulloutL_RHS",d:2.93},{n:"CAR_pullout_LHS",d:2.3},{n:"CAR_pullout_RHS",d:2.8},{n:"CAR_Qjacked",d:3.3},{n:"CAR_rolldoor",d:.6},{n:"CAR_rolldoorLO",d:.6},{n:"CAR_rollout_LHS",d:1.63},{n:"CAR_rollout_RHS",d:1.27},{n:"CAR_shuffle_RHS",d:.4},{n:"CAR_sit",d:.03},{n:"CAR_sitp",d:.03},{n:"CAR_sitpLO",d:.03},{n:"CAR_sit_pro",d:.03},{n:"CAR_sit_weak",d:.03},{n:"CAR_tune_radio",d:.63},{n:"CLIMB_idle",d:.8},{n:"CLIMB_jump",d:.57},{n:"CLIMB_jump2fall",d:.03},{n:"CLIMB_jump_B",d:.97},{n:"CLIMB_Pull",d:.87},{n:"CLIMB_Stand",d:.8},{n:"CLIMB_Stand_finish",d:.2},{n:"cower",d:.8},{n:"Crouch_Roll_L",d:.93},{n:"Crouch_Roll_R",d:.93},{n:"DAM_armL_frmBK",d:.83},{n:"DAM_armL_frmFT",d:.83},{n:"DAM_armL_frmLT",d:.67},{n:"DAM_armR_frmBK",d:.83},{n:"DAM_armR_frmFT",d:.5},{n:"DAM_armR_frmRT",d:.27},{n:"DAM_LegL_frmBK",d:.83},{n:"DAM_LegL_frmFT",d:.83},{n:"DAM_LegL_frmLT",d:.83},{n:"DAM_LegR_frmBK",d:.83},{n:"DAM_LegR_frmFT",d:.83},{n:"DAM_LegR_frmRT",d:.83},{n:"DAM_stomach_frmBK",d:.83},{n:"DAM_stomach_frmFT",d:.83},{n:"DAM_stomach_frmLT",d:.83},{n:"DAM_stomach_frmRT",d:.83},{n:"DOOR_LHinge_O",d:1.07},{n:"DOOR_RHinge_O",d:1.07},{n:"DrivebyL_L",d:.2},{n:"DrivebyL_R",d:.2},{n:"Driveby_L",d:.2},{n:"Driveby_R",d:.2},{n:"DRIVE_BOAT",d:.03},{n:"DRIVE_BOAT_back",d:.1},{n:"DRIVE_BOAT_L",d:.1},{n:"DRIVE_BOAT_R",d:.1},{n:"Drive_L",d:.13},{n:"Drive_LO_l",d:.13},{n:"Drive_LO_R",d:.13},{n:"Drive_L_pro",d:.13},{n:"Drive_L_pro_slow",d:.13},{n:"Drive_L_slow",d:.13},{n:"Drive_L_weak",d:.13},{n:"Drive_L_weak_slow",d:.13},{n:"Drive_R",d:.13},{n:"Drive_R_pro",d:.13},{n:"Drive_R_pro_slow",d:.13},{n:"Drive_R_slow",d:.13},{n:"Drive_R_weak",d:.13},{n:"Drive_R_weak_slow",d:.13},{n:"Drive_truck",d:.03},{n:"DRIVE_truck_back",d:.1},{n:"DRIVE_truck_L",d:.13},{n:"DRIVE_truck_R",d:.13},{n:"Drown",d:2.5},{n:"DUCK_cower",d:.8},{n:"endchat_01",d:2},{n:"endchat_02",d:2},{n:"endchat_03",d:2.33},{n:"EV_dive",d:2.33},{n:"EV_step",d:1.07},{n:"facanger",d:.13},{n:"facgum",d:1.03},{n:"facsurp",d:.13},{n:"facsurpm",d:.13},{n:"factalk",d:2.33},{n:"facurios",d:.13},{n:"FALL_back",d:.73},{n:"FALL_collapse",d:1},{n:"FALL_fall",d:.73},{n:"FALL_front",d:.73},{n:"FALL_glide",d:.8},{n:"FALL_land",d:.47},{n:"FALL_skyDive",d:1.33},{n:"Fight2Idle",d:.33},{n:"FightA_1",d:.43},{n:"FightA_2",d:.77},{n:"FightA_3",d:.87},{n:"FightA_block",d:.47},{n:"FightA_G",d:.93},{n:"FightA_M",d:.4},{n:"FIGHTIDLE",d:1.3},{n:"FightShB",d:.47},{n:"FightShF",d:.53},{n:"FightSh_BWD",d:.67},{n:"FightSh_FWD",d:.67},{n:"FightSh_Left",d:.67},{n:"FightSh_Right",d:.67},{n:"flee_lkaround_01",d:2},{n:"FLOOR_hit",d:.37},{n:"FLOOR_hit_f",d:.4},{n:"fucku",d:1.33},{n:"gang_gunstand",d:.03},{n:"gas_cwr",d:1},{n:"getup",d:1.37},{n:"getup_front",d:1.37},{n:"gum_eat",d:5.33},{n:"GunCrouchBwd",d:1},{n:"GunCrouchFwd",d:.73},{n:"GunMove_BWD",d:1.03},{n:"GunMove_FWD",d:1},{n:"GunMove_L",d:1},{n:"GunMove_R",d:1},{n:"Gun_2_IDLE",d:.27},{n:"GUN_BUTT",d:.43},{n:"GUN_BUTT_crouch",d:.43},{n:"Gun_stand",d:.03},{n:"handscower",d:1.93},{n:"handsup",d:.6},{n:"HitA_1",d:.3},{n:"HitA_2",d:.53},{n:"HitA_3",d:.57},{n:"HIT_back",d:.5},{n:"HIT_behind",d:.67},{n:"HIT_front",d:.6},{n:"HIT_GUN_BUTT",d:.5},{n:"HIT_L",d:.7},{n:"HIT_R",d:.6},{n:"HIT_walk",d:.33},{n:"HIT_wall",d:.7},{n:"Idlestance_fat",d:1.67},{n:"idlestance_old",d:2},{n:"IDLE_armed",d:1.47},{n:"IDLE_chat",d:6.67},{n:"IDLE_csaw",d:1.53},{n:"Idle_Gang1",d:1.67},{n:"IDLE_HBHB",d:2.67},{n:"IDLE_ROCKET",d:1.57},{n:"IDLE_stance",d:1.5},{n:"IDLE_taxi",d:.87},{n:"IDLE_tired",d:1},{n:"Jetpack_Idle",d:.03},{n:"JOG_femaleA",d:.77},{n:"JOG_maleA",d:.77},{n:"JUMP_glide",d:.5},{n:"JUMP_land",d:.23},{n:"JUMP_launch",d:.2},{n:"JUMP_launch_R",d:.2},{n:"KART_drive",d:.03},{n:"KART_L",d:.13},{n:"KART_LB",d:.03},{n:"KART_R",d:.13},{n:"KD_left",d:.9},{n:"KD_right",d:.9},{n:"KO_shot_face",d:2.1},{n:"KO_shot_front",d:.57},{n:"KO_shot_stom",d:3.17},{n:"KO_skid_back",d:.97},{n:"KO_skid_front",d:1.13},{n:"KO_spin_L",d:.87},{n:"KO_spin_R",d:.93},{n:"pass_Smoke_in_car",d:1.73},{n:"phone_in",d:2.33},{n:"phone_out",d:2},{n:"phone_talk",d:2},{n:"Player_Sneak",d:1.33},{n:"Player_Sneak_walkstart",d:.3},{n:"roadcross",d:2},{n:"roadcross_female",d:4},{n:"roadcross_gang",d:2},{n:"roadcross_old",d:4},{n:"run_1armed",d:.77},{n:"run_armed",d:.7},{n:"run_civi",d:.73},{n:"run_csaw",d:.7},{n:"run_fat",d:.8},{n:"run_fatold",d:.8},{n:"run_gang1",d:.83},{n:"run_left",d:.67},{n:"run_old",d:.8},{n:"run_player",d:.73},{n:"run_right",d:.67},{n:"run_rocket",d:.77},{n:"Run_stop",d:.87},{n:"Run_stopR",d:.8},{n:"Run_Wuzi",d:.77},{n:"SEAT_down",d:1.5},{n:"SEAT_idle",d:2},{n:"SEAT_up",d:1.17},{n:"SHOT_leftP",d:.3},{n:"SHOT_partial",d:.37},{n:"SHOT_partial_B",d:.33},{n:"SHOT_rightP",d:.33},{n:"Shove_Partial",d:.53},{n:"Smoke_in_car",d:1.73},{n:"sprint_civi",d:.53},{n:"sprint_panic",d:.6},{n:"Sprint_Wuzi",d:.67},{n:"swat_run",d:.67},{n:"Swim_Tread",d:1.3},{n:"Tap_hand",d:.03},{n:"Tap_handP",d:.03},{n:"turn_180",d:.63},{n:"Turn_L",d:.8},{n:"Turn_R",d:.8},{n:"WALK_armed",d:1.07},{n:"WALK_civi",d:1.13},{n:"WALK_csaw",d:1.07},{n:"Walk_DoorPartial",d:.8},{n:"WALK_drunk",d:3.93},{n:"WALK_fat",d:1.33},{n:"WALK_fatold",d:1.17},{n:"WALK_gang1",d:1.4},{n:"WALK_gang2",d:1.4},{n:"WALK_old",d:1.4},{n:"WALK_player",d:1.2},{n:"WALK_rocket",d:1.07},{n:"WALK_shuffle",d:1.2},{n:"WALK_start",d:.27},{n:"WALK_start_armed",d:.2},{n:"WALK_start_csaw",d:.2},{n:"WALK_start_rocket",d:.2},{n:"Walk_Wuzi",d:1.17},{n:"WEAPON_crouch",d:.8},{n:"woman_idlestance",d:5.33},{n:"woman_run",d:.77},{n:"WOMAN_runbusy",d:.67},{n:"WOMAN_runfatold",d:1.2},{n:"woman_runpanic",d:.6},{n:"WOMAN_runsexy",d:.7},{n:"WOMAN_walkbusy",d:1},{n:"WOMAN_walkfatold",d:1.2},{n:"WOMAN_walknorm",d:1.13},{n:"WOMAN_walkold",d:1.2},{n:"WOMAN_walkpro",d:1.33},{n:"WOMAN_walksexy",d:1.17},{n:"WOMAN_walkshop",d:.97},{n:"XPRESSscratch",d:3.97}]],["PLAYER_DVBYS",[{n:"Plyr_DrivebyBwd",d:.83},{n:"Plyr_DrivebyFwd",d:.83},{n:"Plyr_DrivebyLHS",d:.83},{n:"Plyr_DrivebyRHS",d:.83}]],["PLAYIDLES",[{n:"shift",d:3.6},{n:"shldr",d:2.17},{n:"stretch",d:4.6},{n:"strleg",d:3.67},{n:"time",d:5.2}]],["POLICE",[{n:"CopTraf_Away",d:1.47},{n:"CopTraf_Come",d:2.87},{n:"CopTraf_Left",d:2},{n:"CopTraf_Stop",d:2},{n:"COP_getoutcar_LHS",d:.83},{n:"Cop_move_FWD",d:1},{n:"crm_drgbst_01",d:18.57},{n:"Door_Kick",d:1.33},{n:"plc_drgbst_01",d:20.6},{n:"plc_drgbst_02",d:7.57}]],["POOL",[{n:"POOL_ChalkCue",d:4.83},{n:"POOL_Idle_Stance",d:2},{n:"POOL_Long_Shot",d:1.67},{n:"POOL_Long_Shot_O",d:1.67},{n:"POOL_Long_Start",d:.67},{n:"POOL_Long_Start_O",d:.67},{n:"POOL_Med_Shot",d:1.67},{n:"POOL_Med_Shot_O",d:1.67},{n:"POOL_Med_Start",d:.67},{n:"POOL_Med_Start_O",d:.67},{n:"POOL_Place_White",d:2.5},{n:"POOL_Short_Shot",d:1.67},{n:"POOL_Short_Shot_O",d:1.67},{n:"POOL_Short_Start",d:.67},{n:"POOL_Short_Start_O",d:.67},{n:"POOL_Walk",d:1.27},{n:"POOL_Walk_Start",d:.2},{n:"POOL_XLong_Shot",d:1.67},{n:"POOL_XLong_Shot_O",d:1.67},{n:"POOL_XLong_Start",d:.67},{n:"POOL_XLong_Start_O",d:.67}]],["POOR",[{n:"WINWASH_Start",d:.43},{n:"WINWASH_Wash2Beg",d:2.13}]],["PYTHON",[{n:"python_crouchfire",d:1.2},{n:"python_crouchreload",d:1},{n:"python_fire",d:1.17},{n:"python_fire_poor",d:1.47},{n:"python_reload",d:.93}]],["QUAD",[{n:"QUAD_back",d:.1},{n:"QUAD_driveby_FT",d:.2},{n:"QUAD_driveby_LHS",d:.2},{n:"QUAD_driveby_RHS",d:.2},{n:"QUAD_FWD",d:.2},{n:"QUAD_getoff_B",d:1.63},{n:"QUAD_getoff_LHS",d:.67},{n:"QUAD_getoff_RHS",d:.7},{n:"QUAD_geton_LHS",d:.73},{n:"QUAD_geton_RHS",d:.73},{n:"QUAD_hit",d:.03},{n:"QUAD_kick",d:1.13},{n:"QUAD_Left",d:.13},{n:"QUAD_passenger",d:.03},{n:"QUAD_reverse",d:.17},{n:"QUAD_ride",d:.03},{n:"QUAD_Right",d:.13}]],["QUAD_DBZ",[{n:"Pass_Driveby_BWD",d:.83},{n:"Pass_Driveby_FWD",d:.83},{n:"Pass_Driveby_LHS",d:.83},{n:"Pass_Driveby_RHS",d:.83}]],["RAPPING",[{n:"Laugh_01",d:5.33},{n:"RAP_A_IN",d:.83},{n:"RAP_A_Loop",d:2.67},{n:"RAP_A_OUT",d:.33},{n:"RAP_B_IN",d:1},{n:"RAP_B_Loop",d:2.67},{n:"RAP_B_OUT",d:.87},{n:"RAP_C_Loop",d:3}]],["RIFLE",[{n:"RIFLE_crouchfire",d:.87},{n:"RIFLE_crouchload",d:1.27},{n:"RIFLE_fire",d:.8},{n:"RIFLE_fire_poor",d:.8},{n:"RIFLE_load",d:1.4}]],["RIOT",[{n:"RIOT_ANGRY",d:5},{n:"RIOT_ANGRY_B",d:.63},{n:"RIOT_challenge",d:3.23},{n:"RIOT_CHANT",d:1.73},{n:"RIOT_FUKU",d:.67},{n:"RIOT_PUNCHES",d:.67},{n:"RIOT_shout",d:1}]],["ROB_BANK",[{n:"CAT_Safe_End",d:.5},{n:"CAT_Safe_Open",d:3.33},{n:"CAT_Safe_Open_O",d:3.33},{n:"CAT_Safe_Rob",d:1.83},{n:"SHP_HandsUp_Scr",d:.67}]],["ROCKET",[{n:"idle_rocket",d:1.6},{n:"RocketFire",d:.97},{n:"run_rocket",d:.77},{n:"walk_rocket",d:1.07},{n:"WALK_start_rocket",d:.2}]],["RUNNINGMAN",[{n:"Dance_B1",d:.53},{n:"Dance_B2",d:.57},{n:"Dance_B3",d:.53},{n:"Dance_B4",d:.57},{n:"Dance_B5",d:.53},{n:"Dance_B6",d:.57},{n:"Dance_B7",d:.53},{n:"Dance_B8",d:.57},{n:"Dance_B9",d:.53},{n:"Dance_B10",d:.57},{n:"Dance_B11",d:.53},{n:"Dance_B12",d:.57},{n:"Dance_B13",d:.53},{n:"Dance_B14",d:.57},{n:"Dance_B15",d:.53},{n:"Dance_B16",d:.57},{n:"Dance_G1",d:.53},{n:"Dance_G2",d:.57},{n:"Dance_G3",d:.53},{n:"Dance_G4",d:.57},{n:"Dance_G5",d:.53},{n:"Dance_G6",d:.57},{n:"Dance_G7",d:.53},{n:"Dance_G8",d:.57},{n:"Dance_G9",d:.53},{n:"Dance_G10",d:.57},{n:"Dance_G11",d:.53},{n:"Dance_G12",d:.57},{n:"Dance_G13",d:.53},{n:"Dance_G14",d:.57},{n:"Dance_G15",d:.53},{n:"Dance_G16",d:.57},{n:"dance_loop",d:1.17}]],["RUSTLER",[{n:"Plane_align_LHS",d:.73},{n:"Plane_close",d:.4},{n:"Plane_getin",d:.8},{n:"Plane_getout",d:1.57},{n:"Plane_open",d:.7}]],["RYDER",[{n:"RYD_Beckon_01",d:1.23},{n:"RYD_Beckon_02",d:1},{n:"RYD_Beckon_03",d:1.07},{n:"RYD_Die_PT1",d:4},{n:"RYD_Die_PT2",d:7.93},{n:"Van_Crate_L",d:.67},{n:"Van_Crate_R",d:.67},{n:"Van_Fall_L",d:.47},{n:"Van_Fall_R",d:.93},{n:"Van_Lean_L",d:.67},{n:"Van_Lean_R",d:.67},{n:"VAN_PickUp_E",d:1.83},{n:"VAN_PickUp_S",d:1.5},{n:"Van_Stand",d:.67},{n:"Van_Stand_Crate",d:.67},{n:"Van_Throw",d:1.37}]],["SAMP",[{n:"FishingIdle",d:1}]],["SCRATCHING",[{n:"scdldlp",d:.67},{n:"scdlulp",d:.67},{n:"scdrdlp",d:.67},{n:"scdrulp",d:.67},{n:"sclng_l",d:1},{n:"sclng_r",d:1},{n:"scmid_l",d:.47},{n:"scmid_r",d:.47},{n:"scshrtl",d:.2},{n:"scshrtr",d:.2},{n:"sc_ltor",d:.67},{n:"sc_rtol",d:.67}]],["SHAMAL",[{n:"SHAMAL_align",d:.2},{n:"SHAMAL_getin_LHS",d:1.4},{n:"SHAMAL_getout_LHS",d:1.37},{n:"SHAMAL_open",d:.6}]],["SHOP",[{n:"ROB_2Idle",d:1.17},{n:"ROB_Loop",d:2.67},{n:"ROB_Loop_Threat",d:2},{n:"ROB_Shifty",d:5.67},{n:"ROB_StickUp_In",d:.53},{n:"SHP_Duck",d:.67},{n:"SHP_Duck_Aim",d:.33},{n:"SHP_Duck_Fire",d:.83},{n:"SHP_Gun_Aim",d:.63},{n:"SHP_Gun_Duck",d:.5},{n:"SHP_Gun_Fire",d:.87},{n:"SHP_Gun_Grab",d:.87},{n:"SHP_Gun_Threat",d:.83},{n:"SHP_HandsUp_Scr",d:.67},{n:"SHP_Jump_Glide",d:.33},{n:"SHP_Jump_Land",d:.7},{n:"SHP_Jump_Launch",d:.57},{n:"SHP_Rob_GiveCash",d:3.83},{n:"SHP_Rob_HandsUp",d:2.67},{n:"SHP_Rob_React",d:2.67},{n:"SHP_Serve_End",d:5.5},{n:"SHP_Serve_Idle",d:5},{n:"SHP_Serve_Loop",d:4.17},{n:"SHP_Serve_Start",d:1.33},{n:"Smoke_RYD",d:6.67}]],["SHOTGUN",[{n:"shotgun_crouchfire",d:1.47},{n:"shotgun_fire",d:1.47},{n:"shotgun_fire_poor",d:1.5}]],["SILENCED",[{n:"CrouchReload",d:1},{n:"SilenceCrouchfire",d:.93},{n:"Silence_fire",d:.87},{n:"Silence_reload",d:.93}]],["SKATE",[{n:"skate_idle",d:1},{n:"skate_run",d:.83},{n:"skate_sprint",d:.67}]],["SMOKING",[{n:"F_smklean_loop",d:4},{n:"M_smklean_loop",d:5},{n:"M_smkstnd_loop",d:5.33},{n:"M_smk_drag",d:3.67},{n:"M_smk_in",d:6.67},{n:"M_smk_loop",d:3.33},{n:"M_smk_out",d:3},{n:"M_smk_tap",d:3}]],["SNIPER",[{n:"WEAPON_sniper",d:1.47}]],["SnM",[{n:"SnM_Caned_Idle_P",d:2},{n:"SnM_Caned_Idle_W",d:2},{n:"SnM_Caned_P",d:1.33},{n:"SnM_Caned_W",d:1.33},{n:"SnM_Cane_Idle_P",d:2},{n:"SnM_Cane_Idle_W",d:2},{n:"SnM_Cane_P",d:1.33},{n:"SnM_Cane_W",d:1.33},{n:"SpankedP",d:1.33},{n:"SpankedW",d:1.33},{n:"Spanked_IdleP",d:1.33},{n:"Spanked_IdleW",d:1.33},{n:"SpankingP",d:1.33},{n:"SpankingW",d:1.33},{n:"Spanking_endP",d:6.67},{n:"Spanking_endW",d:6.67},{n:"Spanking_IdleP",d:1.33},{n:"Spanking_IdleW",d:1.33},{n:"Spanking_SittingIdleP",d:1.33},{n:"Spanking_SittingIdleW",d:1.33},{n:"Spanking_SittingP",d:1},{n:"Spanking_SittingW",d:1}]],["SPRAYCAN",[{n:"spraycan_fire",d:2.33},{n:"spraycan_full",d:4.5}]],["STRIP",[{n:"PLY_CASH",d:1.67},{n:"PUN_CASH",d:3.33},{n:"PUN_HOLLER",d:5},{n:"PUN_LOOP",d:1.93},{n:"strip_A",d:2.07},{n:"strip_B",d:1},{n:"strip_C",d:.97},{n:"strip_D",d:1.9},{n:"strip_E",d:3.33},{n:"strip_F",d:1.03},{n:"strip_G",d:2.27},{n:"STR_A2B",d:4},{n:"STR_B2A",d:.5},{n:"STR_B2C",d:5},{n:"STR_C1",d:6},{n:"STR_C2",d:6},{n:"STR_C2B",d:1},{n:"STR_Loop_A",d:1},{n:"STR_Loop_B",d:2},{n:"STR_Loop_C",d:3}]],["SUNBATHE",[{n:"batherdown",d:3.93},{n:"batherup",d:12.3},{n:"Lay_Bac_in",d:2.33},{n:"Lay_Bac_out",d:3},{n:"ParkSit_M_IdleA",d:3.33},{n:"ParkSit_M_IdleB",d:2.67},{n:"ParkSit_M_IdleC",d:4.33},{n:"ParkSit_M_in",d:2.33},{n:"ParkSit_M_out",d:2},{n:"ParkSit_W_idleA",d:3.33},{n:"ParkSit_W_idleB",d:5},{n:"ParkSit_W_idleC",d:3},{n:"ParkSit_W_in",d:4},{n:"ParkSit_W_out",d:2.67},{n:"SBATHE_F_LieB2Sit",d:1.67},{n:"SBATHE_F_Out",d:2},{n:"SitnWait_in_W",d:4.67},{n:"SitnWait_out_W",d:2.67}]],["SWAT",[{n:"gnstwall_injurd",d:2},{n:"JMP_Wall1m_180",d:1.17},{n:"Rail_fall",d:3},{n:"Rail_fall_crawl",d:5.67},{n:"swt_breach_01",d:5.47},{n:"swt_breach_02",d:5.33},{n:"swt_breach_03",d:4.3},{n:"swt_go",d:1.67},{n:"swt_lkt",d:3},{n:"swt_sty",d:1.17},{n:"swt_vent_01",d:4.73},{n:"swt_vent_02",d:4.43},{n:"swt_vnt_sht_die",d:.67},{n:"swt_vnt_sht_in",d:1.6},{n:"swt_vnt_sht_loop",d:.27},{n:"swt_wllpk_L",d:2.67},{n:"swt_wllpk_L_back",d:.5},{n:"swt_wllpk_R",d:3.67},{n:"swt_wllpk_R_back",d:.43},{n:"swt_wllshoot_in_L",d:1},{n:"swt_wllshoot_in_R",d:1.3},{n:"swt_wllshoot_out_L",d:2},{n:"swt_wllshoot_out_R",d:1.43}]],["SWEET",[{n:"ho_ass_slapped",d:2},{n:"LaFin_Player",d:26.67},{n:"LaFin_Sweet",d:26.67},{n:"plyr_hndshldr_01",d:4},{n:"sweet_ass_slap",d:2},{n:"sweet_hndshldr_01",d:4},{n:"Sweet_injuredloop",d:2}]],["SWIM",[{n:"Swim_Breast",d:1.3},{n:"SWIM_crawl",d:.9},{n:"Swim_Dive_Under",d:1.07},{n:"Swim_Glide",d:1.47},{n:"Swim_jumpout",d:.33},{n:"Swim_Tread",d:1.3},{n:"Swim_Under",d:1.5}]],["SWORD",[{n:"sword_1",d:.87},{n:"sword_2",d:1.07},{n:"sword_3",d:.8},{n:"sword_4",d:1.1},{n:"sword_block",d:.47},{n:"Sword_Hit_1",d:.83},{n:"Sword_Hit_2",d:1.03},{n:"Sword_Hit_3",d:.87},{n:"sword_IDLE",d:1},{n:"sword_part",d:.67}]],["TANK",[{n:"TANK_align_LHS",d:1.43},{n:"TANK_close_LHS",d:.33},{n:"TANK_doorlocked",d:.53},{n:"TANK_getin_LHS",d:.43},{n:"TANK_getout_LHS",d:1.97},{n:"TANK_open_LHS",d:.3}]],["TATTOOS",[{n:"TAT_ArmL_In_O",d:.83},{n:"TAT_ArmL_In_P",d:.83},{n:"TAT_ArmL_In_T",d:.83},{n:"TAT_ArmL_Out_O",d:.93},{n:"TAT_ArmL_Out_P",d:2.5},{n:"TAT_ArmL_Out_T",d:.93},{n:"TAT_ArmL_Pose_O",d:.83},{n:"TAT_ArmL_Pose_P",d:.83},{n:"TAT_ArmL_Pose_T",d:.83},{n:"TAT_ArmR_In_O",d:.83},{n:"TAT_ArmR_In_P",d:.83},{n:"TAT_ArmR_In_T",d:.83},{n:"TAT_ArmR_Out_O",d:1},{n:"TAT_ArmR_Out_P",d:2.5},{n:"TAT_ArmR_Out_T",d:1},{n:"TAT_ArmR_Pose_O",d:.83},{n:"TAT_ArmR_Pose_P",d:.83},{n:"TAT_ArmR_Pose_T",d:.83},{n:"TAT_Back_In_O",d:.83},{n:"TAT_Back_In_P",d:.83},{n:"TAT_Back_In_T",d:.83},{n:"TAT_Back_Out_O",d:.93},{n:"TAT_Back_Out_P",d:2.5},{n:"TAT_Back_Out_T",d:.93},{n:"TAT_Back_Pose_O",d:.83},{n:"TAT_Back_Pose_P",d:.83},{n:"TAT_Back_Pose_T",d:.83},{n:"TAT_Back_Sit_In_P",d:.83},{n:"TAT_Back_Sit_Loop_P",d:2.67},{n:"TAT_Back_Sit_Out_P",d:.83},{n:"TAT_Bel_In_O",d:.83},{n:"TAT_Bel_In_T",d:.83},{n:"TAT_Bel_Out_O",d:.97},{n:"TAT_Bel_Out_T",d:.97},{n:"TAT_Bel_Pose_O",d:.83},{n:"TAT_Bel_Pose_T",d:.83},{n:"TAT_Che_In_O",d:.83},{n:"TAT_Che_In_P",d:.83},{n:"TAT_Che_In_T",d:.83},{n:"TAT_Che_Out_O",d:.93},{n:"TAT_Che_Out_P",d:2.5},{n:"TAT_Che_Out_T",d:.93},{n:"TAT_Che_Pose_O",d:.83},{n:"TAT_Che_Pose_P",d:.83},{n:"TAT_Che_Pose_T",d:.83},{n:"TAT_Drop_O",d:.5},{n:"TAT_Idle_Loop_O",d:2.67},{n:"TAT_Idle_Loop_T",d:2.67},{n:"TAT_Sit_In_O",d:2.33},{n:"TAT_Sit_In_P",d:2.33},{n:"TAT_Sit_In_T",d:2.33},{n:"TAT_Sit_Loop_O",d:2.67},{n:"TAT_Sit_Loop_P",d:2.67},{n:"TAT_Sit_Loop_T",d:2.67},{n:"TAT_Sit_Out_O",d:2.83},{n:"TAT_Sit_Out_P",d:2.17},{n:"TAT_Sit_Out_T",d:2.83}]],["TEC",[{n:"TEC_crouchfire",d:.97},{n:"TEC_crouchreload",d:1.33},{n:"TEC_fire",d:1.1},{n:"TEC_reload",d:1.5}]],["TRAIN",[{n:"tran_gtup",d:3.17},{n:"tran_hng",d:2.33},{n:"tran_ouch",d:1.17},{n:"tran_stmb",d:2.33}]],["TRUCK",[{n:"TRUCK_ALIGN_LHS",d:.57},{n:"TRUCK_ALIGN_RHS",d:.57},{n:"TRUCK_closedoor_LHS",d:.4},{n:"TRUCK_closedoor_RHS",d:.4},{n:"TRUCK_close_LHS",d:.73},{n:"TRUCK_close_RHS",d:.73},{n:"TRUCK_getin_LHS",d:.6},{n:"TRUCK_getin_RHS",d:.6},{n:"TRUCK_getout_LHS",d:.8},{n:"TRUCK_getout_RHS",d:.8},{n:"TRUCK_jackedLHS",d:1.73},{n:"TRUCK_jackedRHS",d:1.5},{n:"TRUCK_open_LHS",d:.53},{n:"TRUCK_open_RHS",d:.53},{n:"TRUCK_pullout_LHS",d:.9},{n:"TRUCK_pullout_RHS",d:.9},{n:"TRUCK_Shuffle",d:.4}]],["UZI",[{n:"UZI_crouchfire",d:.63},{n:"UZI_crouchreload",d:1.37},{n:"UZI_fire",d:.57},{n:"UZI_fire_poor",d:.53},{n:"UZI_reload",d:1.4}]],["VAN",[{n:"VAN_close_back_LHS",d:.33},{n:"VAN_close_back_RHS",d:.33},{n:"VAN_getin_Back_LHS",d:.6},{n:"VAN_getin_Back_RHS",d:.6},{n:"VAN_getout_back_LHS",d:.63},{n:"VAN_getout_back_RHS",d:.63},{n:"VAN_open_back_LHS",d:.97},{n:"VAN_open_back_RHS",d:.97}]],["VENDING",[{n:"VEND_Drink2_P",d:3.33},{n:"VEND_Drink_P",d:1.33},{n:"vend_eat1_P",d:4.33},{n:"VEND_Eat_P",d:1.67},{n:"VEND_Use",d:2.6},{n:"VEND_Use_pt2",d:.4}]],["VORTEX",[{n:"CAR_jumpin_LHS",d:1},{n:"CAR_jumpin_RHS",d:.93},{n:"vortex_getout_LHS",d:1},{n:"vortex_getout_RHS",d:1}]],["WAYFARER",[{n:"WF_Back",d:.1},{n:"WF_drivebyFT",d:.2},{n:"WF_drivebyLHS",d:.2},{n:"WF_drivebyRHS",d:.2},{n:"WF_Fwd",d:.2},{n:"WF_getoffBACK",d:1.73},{n:"WF_getoffLHS",d:.9},{n:"WF_getoffRHS",d:.9},{n:"WF_hit",d:.03},{n:"WF_jumponL",d:.9},{n:"WF_jumponR",d:.9},{n:"WF_kick",d:1.03},{n:"WF_Left",d:.13},{n:"WF_passenger",d:.03},{n:"WF_pushes",d:.97},{n:"WF_Ride",d:.03},{n:"WF_Right",d:.13},{n:"WF_Still",d:.03}]],["WEAPONS",[{n:"SHP_1H_Lift",d:1},{n:"SHP_1H_Lift_End",d:.33},{n:"SHP_1H_Ret",d:.83},{n:"SHP_1H_Ret_S",d:.33},{n:"SHP_2H_Lift",d:.93},{n:"SHP_2H_Lift_End",d:.33},{n:"SHP_2H_Ret",d:.9},{n:"SHP_2H_Ret_S",d:.33},{n:"SHP_Ar_Lift",d:1},{n:"SHP_Ar_Lift_End",d:.33},{n:"SHP_Ar_Ret",d:1.17},{n:"SHP_Ar_Ret_S",d:.33},{n:"SHP_G_Lift_In",d:.67},{n:"SHP_G_Lift_Out",d:.67},{n:"SHP_Tray_In",d:.67},{n:"SHP_Tray_Out",d:.67},{n:"SHP_Tray_Pose",d:2.67}]],["WOP",[{n:"Dance_B1",d:1.13},{n:"Dance_B2",d:1.17},{n:"Dance_B3",d:1.13},{n:"Dance_B4",d:1.17},{n:"Dance_B5",d:1.13},{n:"Dance_B6",d:1.17},{n:"Dance_B7",d:1.13},{n:"Dance_B8",d:1.17},{n:"Dance_B9",d:1.13},{n:"Dance_B10",d:1.17},{n:"Dance_B11",d:1.13},{n:"Dance_B12",d:1.17},{n:"Dance_B13",d:1.13},{n:"Dance_B14",d:1.17},{n:"Dance_B15",d:1.13},{n:"Dance_B16",d:1.17},{n:"Dance_G1",d:1.13},{n:"Dance_G2",d:1.17},{n:"Dance_G3",d:1.13},{n:"Dance_G4",d:1.17},{n:"Dance_G5",d:1.13},{n:"Dance_G6",d:1.17},{n:"Dance_G7",d:1.13},{n:"Dance_G8",d:1.17},{n:"Dance_G9",d:1.13},{n:"Dance_G10",d:1.17},{n:"Dance_G11",d:1.13},{n:"Dance_G12",d:1.17},{n:"Dance_G13",d:1.13},{n:"Dance_G14",d:1.17},{n:"Dance_G15",d:1.13},{n:"Dance_G16",d:1.17},{n:"dance_loop",d:1.17}]],["WUZI",[{n:"CS_Dead_Guy",d:5.07},{n:"CS_Plyr_pt1",d:3.77},{n:"CS_Plyr_pt2",d:9.67},{n:"CS_Wuzi_pt1",d:3.77},{n:"CS_Wuzi_pt2",d:9.67},{n:"Walkstart_Idle_01",d:3.17},{n:"Wuzi_follow",d:3},{n:"Wuzi_Greet_Plyr",d:4},{n:"Wuzi_Greet_Wuzi",d:4},{n:"Wuzi_grnd_chk",d:4},{n:"Wuzi_stand_loop",d:2.67},{n:"Wuzi_Walk",d:1.17}]]]),et=e=>{const t=ni.get(e.toUpperCase());return t===void 0?!1:t},tt=(e,t)=>{const i=et(e);if(i)return t==="null"?!0:i.some(a=>a.n===t)},Im=(e,t)=>{const i=et(e);if(i)return i.find(a=>a.n===t)?.d},ee=(e,t)=>{const i=t.replace("-","")==="utf8"?e:I.encodeToBuf(e,t);return[i instanceof Array?"a":"s",i]},ri=(e,t,i)=>{const a=ee(i,e.charset);return samp.callNative("SendClientMessage",`ii${a[0]}`,e.id,E(t),a[1])},Em=(e,t,i)=>(e.forEach(a=>ri(a,t,i)),1),si=(e,t,i)=>{const a=ee(i,e.charset);return samp.callNative("SendPlayerMessageToPlayer",`ii${a[0]}`,e.id,t,a[1])},Am=(e,t,i)=>(e.forEach(a=>{si(a,t,i)}),1),Cm=(e,t,i)=>{const{charset:a}=e,{style:n,caption:r,info:s,button1:l,button2:o}=i,[d,c]=ee(r||"",a),[,h]=ee(s||"",a),[,p]=ee(l||"",a),[,g]=ee(o||"",a);return!!samp.callNative("ShowPlayerDialog",`iii${d.repeat(4)}`,e.id,t,n,c,h,p,g)},Nm=e=>{const[t,i]=samp.callNative("GetPlayerName","iAi",e.id,F.MAX_PLAYER_NAME);return{name:I.decodeFromBuf(I.getValidStr(t),e.charset),ret:i}},Tm=(e,t)=>samp.callNative("SetPlayerName","ia",e.id,I.encodeToBuf(t,e.charset)),Dm=(e,t,i)=>{const a=I.encodeToBuf(t,i);return samp.callNative("BanEx","ia",e,a)},vm=(e,t="utf8")=>{const[i,a]=ee(e,t);return samp.callNative("SendRconCommand",i,a)},wm=(e,t,i,a,n,r,s,l,o,d,c,h,p,g,f,y)=>{const w=I.encodeToBuf(t,e);return samp.callNative("CreateDynamic3DTextLabel","aiffffiiiiiifii",w,i,a,n,r,s,l,o,d,c,h,p,g,f,y)},Rm=(e,t,i,a,n,r,s,l,o,d,c,h,p,g,f,y)=>{const w=I.encodeToBuf(e,y);return samp.callNative("CreateDynamic3DTextLabelEx","aiffffiiifaaaaiiiii",w,t,i,a,n,r,s,l,o,d,c,h,p,g,f,c.length,h.length,p.length,g.length)},Lm=(e,t,i,a)=>{const n=I.encodeToBuf(i,a);return samp.callNative("UpdateDynamic3DTextLabelText","iia",e,t,n)},bm=(e,t)=>{const[i,a]=samp.callNative("GetDynamic3DTextLabelText","iAi",e,1024);return{text:I.decodeFromBuf(I.getValidStr(i),t),ret:a}},Om=(e,t,i,a,n,r,s,l,o,d,c)=>{const h=I.encodeToBuf(a,e),p=I.encodeToBuf(r,e);return samp.callNative("SetDynamicObjectMaterialText","iiaiaiiiii",t,i,h,n,p,s,l,o,d,c)},Gm=(e,t,i="utf8")=>{const[a,n,r,s,l]=samp.callNative("GetDynamicObjectMaterial","iiIAAIii",e,t,64,64);return{modelId:a,txdName:I.decodeFromBuf(I.getValidStr(n),i),textureName:I.decodeFromBuf(I.getValidStr(r),i),materialColor:s,ret:l}},Fm=(e,t,i)=>{const[a,n,r,s,l,o,d,c,h]=samp.callNative("GetDynamicObjectMaterialText","iiAIAIIIIIii",e,t,2048,32),p=I.decodeFromBuf(a,i),g=I.decodeFromBuf(r,i);return{text:p,materialSize:n,fontFace:g,fontSize:s,bold:l,fontColor:o,backColor:d,textAlignment:c,ret:h}},Bm=(e,t,i,a,n,r)=>{const s=I.encodeToBuf(t,r);return!!samp.callNative("SetPlayerChatBubble","iaifi",e,s,E(i),a,n)},te=Symbol(),j=new Map,K=new Map,De=new Map,ve=new Map,we=new Map,Re=new Map,Z=new Map,ie=new Map,ae=new Map,Le=new Map,be=new Map,X=new Map,fe=new Map,Q=new Map,ne=new Map,re=new Map,se=new Map,ge=new Map,le=new Map,Y=new Uint32Array(65536),xm=(e,t)=>{const i=e.length,a=t.length,n=1<<i-1;let r=-1,s=0,l=i,o=i;for(;o--;)Y[e.charCodeAt(o)]|=1<<o;for(o=0;o<a;o++){let d=Y[t.charCodeAt(o)];const c=d|s;d|=(d&r)+r^r,s|=~(d|r),r&=d,s&n&&l++,r&n&&l--,s=s<<1|1,r=r<<1|~(c|s),s&=c}for(o=i;o--;)Y[e.charCodeAt(o)]=0;return l},km=(e,t)=>{const i=t.length,a=e.length,n=[],r=[],s=Math.ceil(i/32),l=Math.ceil(a/32);for(let f=0;f<s;f++)r[f]=-1,n[f]=0;let o=0;for(;o<l-1;o++){let f=0,y=-1;const w=o*32,G=Math.min(32,a)+w;for(let T=w;T<G;T++)Y[e.charCodeAt(T)]|=1<<T;for(let T=0;T<i;T++){const J=Y[t.charCodeAt(T)],U=r[T/32|0]>>>T&1,H=n[T/32|0]>>>T&1,ot=J|f,dt=((J|H)&y)+y^y|J|H;let Ie=f|~(dt|y),Me=y&dt;Ie>>>31^U&&(r[T/32|0]^=1<<T),Me>>>31^H&&(n[T/32|0]^=1<<T),Ie=Ie<<1|U,Me=Me<<1|H,y=Me|~(ot|Ie),f=Ie&ot}for(let T=w;T<G;T++)Y[e.charCodeAt(T)]=0}let d=0,c=-1;const h=o*32,p=Math.min(32,a-h)+h;for(let f=h;f<p;f++)Y[e.charCodeAt(f)]|=1<<f;let g=a;for(let f=0;f<i;f++){const y=Y[t.charCodeAt(f)],w=r[f/32|0]>>>f&1,G=n[f/32|0]>>>f&1,T=y|d,J=((y|G)&c)+c^c|y|G;let U=d|~(J|c),H=c&J;g+=U>>>a-1&1,g-=H>>>a-1&1,U>>>31^w&&(r[f/32|0]^=1<<f),H>>>31^G&&(n[f/32|0]^=1<<f),U=U<<1|w,H=H<<1|G,c=H|~(T|U),d=U&T}for(let f=h;f<p;f++)Y[e.charCodeAt(f)]=0;return g},li=(e,t)=>{if(e.length<t.length){const i=t;t=e,e=i}return t.length===0?e.length:e.length<=32?xm(e,t):km(e,t)},Mm=(e,t)=>{let i=1/0,a=0;for(let n=0;n<t.length;n++){const r=li(e,t[n]);r<i&&(i=r,a=n)}return t[a]},oe=new Map,de=new Map,oi=/[^/\s]+/gi,Oe={NOT_EXIST:{code:1,msg:"command does not exist"},REJECTED:{code:2,msg:"An event registered through onCommandText returned false"},PERFORMED:{code:3,msg:"An event registered through onCommandPerformed returned false"},RECEIVED_THROW:{code:4,msg:"An event registered through onCommandReceived throw an error"},RECEIVED_REJECTED:{code:5,msg:"An event registered through onCommandReceived returned false"}},[Vm,Hm]=u({name:"OnCommandReceived",isNative:!1,throwOnError:!0,beforeEach(e,t,i,a,n,r,s,l,o){return{player:e,command:t,cmdText:i,buffer:a,strictMainCmd:n,noStrictMainCmd:r,hasStrict:s,hasNoStrict:l,subcommand:o}}}),[Um,Wm]=u({name:"OnCommandPerformed",isNative:!1,beforeEach(e,t,i,a,n,r,s,l,o){return{player:e,command:t,cmdText:i,buffer:a,strictMainCmd:n,noStrictMainCmd:r,hasStrict:s,hasNoStrict:l,subcommand:o}}}),[jm,Ge]=u({name:"OnCommandError",isNative:!1,defaultValue:!1,beforeEach(e,t,i,a,n,r,s,l,o,d){return{player:e,error:t,command:i,cmdText:a,buffer:n,strictMainCmd:r,noStrictMainCmd:s,hasStrict:l,hasNoStrict:o,subcommand:d,getSuggestion(){const c=Mm(a,[...oe.keys(),...de.keys()]),h=li(a,c);return{suggestion:c,distance:h}}}}}),[Km,Zm]=u({name:"OnPlayerCommandTextI18n",identifier:"iai",defaultValue:!1,beforeEach(e,t){const i=j.get(e);let a=t,n="";return typeof t=="string"?(n=t,a=I.encodeToBuf(n,"utf-8")):n=I.decodeFromBuf(t,i.charset),{player:i,buffer:a,cmdText:n}}}),[Xm,Ym]=u({name:"OnPlayerCommandTextRaw",isNative:!1,defaultValue:!1,beforeEach(e,t,i){return{player:e,buffer:t,cmdText:i}}});function zm(e){const t=[];let i="";for(let a=0;a<e.length;a++)i+=e[a]+" ",t.push(i.trimEnd());return t.reverse()}Km(({player:e,buffer:t,cmdText:i,next:a})=>{const n=Ym(e,t,i);if(n)return n;const r=i.match(oi),s=zm(r),l=s.find(y=>oe.has(y)),o=s.map(y=>y.toLowerCase()).find(y=>de.has(y)),d=!!l,c=!!o,h=r.join(" ");let p=[];const g=[[l,oe,!0],[o,de,!1]],f=[h,i,t,l,o,d,c,p];if(d||c){const y=g[0][0]||g[1][0];p=h.replace(y,"").trim().split(" ")}else return Ge(e,Oe.NOT_EXIST,...f);try{if(!Hm(e,...f))return Ge(e,Oe.RECEIVED_REJECTED,...f)}catch(y){const w=typeof y=="object"?y:{error:y};return Ge(e,{...Oe.RECEIVED_THROW,...w},...f)}for(const[y,w,G]of g){if(!y)continue;const T=w.get(y),[,J]=T;if(!J(e,y,p,i,t,G))return Ge(e,Oe.REJECTED,...f)}return Wm(e,h,i,t,l,o,d,c,p)?(a(),!0):Ge(e,Oe.PERFORMED,...f)});function $m(e,t,i,a,n,r){return{player:e,mainCommand:t,subcommand:i,cmdText:a,buffer:n,isStrict:r}}class M{static caseSensitive=!1;constructor(){}static on(t,i){let a=M.caseSensitive,n,r;typeof t=="string"||t instanceof Array?(n=t,r=i):(n=t.command,r=t.run,typeof t.caseSensitive<"u"&&(a=t.caseSensitive));const s=Array.isArray(n)?n:[n],l=s.find(c=>!c.match(oi));if(l)return console.log(`error command ${l} format`),()=>{};const o=a?oe:de,d=s.map(c=>{const h=c.replaceAll("/",""),p=a?h:h.toLowerCase();if(!o.has(p)){const f=u({name:a?"$"+p:p,isNative:!1,beforeEach:$m});o.set(p,f)}const[g]=o.get(p);return[p,g(r)]});return()=>{d.forEach(c=>{const[h,p]=c;p()===0&&o.delete(h)})}}static off(t){(Array.isArray(t)?t:[t]).forEach(i=>{let a=i.replaceAll("/","");oe.has(a)&&(B.has(a)&&B.delete(a),oe.has(a)&&oe.delete(a)),a=a.toLowerCase(),de.has(a)&&(B.has(a)&&B.delete(a),de.has(a)&&de.delete(a))})}static enableCaseSensitive(){M.caseSensitive=!0}static disableCaseSensitive(){M.caseSensitive=!1}static isCaseSensitive(){return M.caseSensitive}static simulate(t,i){return Zm(t.id,i)}}const[di]=u({name:"OnClientCheckResponse",identifier:"iiii",beforeEach(e,t,i,a){return{player:m.getInstance(e),actionId:t,memAddr:i,data:a}}}),[Jm,Qm]=u({name:"OnPlayerLocaleChange",isNative:!1,beforeEach(e,t,i){return{player:e,newLocale:t,oldLocale:i}}}),[qm,ep]=u({name:"OnPlayerCharsetChange",isNative:!1,beforeEach(e,t,i){return{player:e,newCharset:t,oldCharset:i}}});class m{constructor(t){if(this.id=t,t<0||t>=F.MAX_PLAYERS)throw new Error(`Invalid player ID: ${t} (valid range: 0-${F.MAX_PLAYERS-1})`);const i=m.getInstance(t);if(i)return i;j.set(t,this)}[te]={isAndroid:!0};static MAX_CHECK_ANDROID_DELAY=10;static SKIP_CHECK_ANDROID=!1;_charset="ISO-8859-1";_locale="en_US";lastDrunkLevel=0;lastFps=0;lastUpdateTick=0;lastUpdateFpsTick=0;isPaused=!1;isRecording=!1;get charset(){return this._charset}set charset(t){const i=this._charset;this._charset=t,ep(this,t,i)}get locale(){return this._locale}set locale(t){const i=this._locale;this._locale=t,Qm(this,t,i)}sendClientMessage(t,i){return ri(this,t,i)}static sendClientMessageToAll(t,i){Em(m.getInstances(),t,i)}sendMessageToPlayer(t,i){return si(t,this.id,i)}sendMessageToAll(t){return Am(m.getInstances(),this.id,t)}isNpc(){return zl(this.id)}getFps(){return this.lastFps}getDrunkLevel(){return So(this.id)}setDrunkLevel(t){if(t<0||t>5e4)throw new Error("[Player]: player's drunk level ranges from 0 to 50000");return yo(this.id,t)}allowTeleport(t){return Hl(this.id,t)}isTeleportAllowed(){return Ul(this.id)}enableCameraTarget(t){return Md(this.id,t)}enableStuntBonus(t){return gd(this.id,t)}getInterior(){return ro(this.id)}setInterior(t){return no(this.id,t)}showNameTag(t,i){return bd(this.id,t.id,i)}setColor(t){return Io(this.id,t)}getColor(){return Eo(this.id)}setMarker(t,i){Rd(this.id,t.id,i)}getMarker(t){return Ld(this.id,t.id)}resetMoney(){return Ro(this.id)}getMoney(){return Lo(this.id)}giveMoney(t){return wo(this.id,t)}resetWeapons(){return To(this.id)}spawn(){return Xs(this.id)}setHealth(t){return so(this.id,t)}getHealth(){return lo(this.id)}toggleClock(t){return ko(this.id,t)}toggleControllable(t){return ld(this.id,t)}toggleSpectating(t){return Ed(this.id,t)}spectatePlayer(t,i=Ue.NORMAL){return Ad(this.id,t.id,i)}spectateVehicle(t,i=Ue.NORMAL){return Cd(this.id,t.id,i)}forceClassSelection(){return Vo(this.id)}kick(){return sl(this.id)}ban(){return ll(this.id)}banEx(t,i){return Dm(this.id,t,i)}isAdmin(){return nl(this.id)}isInRangeOfPoint(t,i,a,n){return to(this.id,t,i,a,n)}isStreamedIn(t){return ao(this.id,t.id)}setSkin(t,i=!1){return!i&&(t<0||t>311||t===74)||this.getHealth().health<=0||this.isInAnyVehicle()||this.getSpecialAction()===$e.DUCK?!1:Ao(this.id,t)}getSkin(){return Co(this.id)}isInAnyVehicle(){return Dd(this.id)}getSpecialAction(){return hd(this.id)}setSpecialAction(t){return ud(this.id,t)}setScore(t){return go(this.id,t)}getScore(){return Po(this.id)}getPing(){return Oo(this.id)||0}setPos(t,i,a){return $l(this.id,t,i,a)}getPos(){return Ql(this.id)}isSpectating(){return this.getState()===Ne.SPECTATING}isWasted(){return this.getState()===Ne.WASTED}getState(){return bo(this.id)}getVersion(){return Pl(this.id)}setVirtualWorld(t){return pd(this.id,t)}getVirtualWorld(){return fd(this.id)}removeFromVehicle(){return sd(this.id)}setWantedLevel(t){if(t<0||t>6)throw new Error("[Player]: player's wanted level ranges from 0 to 6");return Ho(this.id,t)}getWantedLevel(){return Uo(this.id)}setFacingAngle(t){return ql(this.id,t)}getFacingAngle(){return eo(this.id)}setWeather(t){if(t<0||t>255)throw new Error("[Player]: The valid weather value is only 0 to 255");return Mo(this.id,t)}getWeather(){return El(this.id)}setTime(t,i){if(t<0||t>23)throw new Error("[Player]: The valid hour value is only 0 to 23");if(i<0||i>59)throw new Error("[Player]: The valid minute value is only 0 to 59");return Bo(this.id,t,i)}getTime(){return xo(this.id)}removeBuilding(t,i,a,n,r){return td(this.id,t,i,a,n,r)}setTeam(t){t<0||t>N.NO_TEAM||po(this.id,t)}getTeam(){return fo(this.id)}setSkillLevel(t,i){if(i<0||i>999)throw new Error("[Player]: The valid skill level is only 0 to 999");return Jo(this.id,t,i)}getName(){return Nm(this)}setName(t){return Tm(this,t)}setVelocity(t,i,a){return Ko(this.id,t,i,a)}getVelocity(){return Zo(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:i,y:a,z:n}=this.getVelocity();return qe(i,a,n)*t}getKeys(){return Fo(this.id)}getIp(){return gl(this.id)}getFightingStyle(){return jo(this.id)}setFightingStyle(t){return Wo(this.id,t)}setArmour(t){return oo(this.id,t)}getArmour(){return co(this.id)}setCameraBehind(){return Fd(this.id)}setCameraPos(t,i,a){return Od(this.id,t,i,a)}setCameraLookAt(t,i,a,n=Ce.CUT){return Gd(this.id,t,i,a,n)}getCameraAspectRatio(){return Ud(this.id)}getCameraFrontVector(){return xd(this.id)}getCameraMode(){return kd(this.id)}getCameraPos(){return Bd(this.id)}getCameraTargetPlayer(){const t=Hd(this.id);return m.getInstances().find(i=>i.id===t)}getCameraTargetVehicle(){const t=Vd(this.id);return[...K.values()].find(i=>i.id===t)}getCameraZoom(){return Wd(this.id)}playAudioStream(t,i=0,a=0,n=0,r=5){let s=!1;return(i!==0||a!==0||n!==0)&&(s=!0),Yo(this.id,t,i,a,n,r,s)}stopAudioStream(){return zo(this.id)}playSound(t,i=0,a=0,n=0){return od(this.id,t,i,a,n)}static getMaxPlayers(){return ps()}playCrimeReport(t,i){if(i<3||i>22)throw new Error("[Player]: Available crime ids range from 3 to 22");return Xo(this.id,t.id,i)}interpolateCameraPos(t,i,a,n,r,s,l,o=Ce.CUT){return jd(this.id,t,i,a,n,r,s,l,o)}interpolateCameraLookAt(t,i,a,n,r,s,l,o=Ce.CUT){return Kd(this.id,t,i,a,n,r,s,l,o)}createExplosion(t,i,a,n,r){if(n<0||n>13)throw new Error("[Player]: The valid explosion type value is only 0 to 13");return Sd(this.id,t,i,a,n,r)}static isConnected(t){return Nd(t)}isConnected(){return m.isConnected(this.id)}disableRemoteVehicleCollisions(t){return md(this.id,t)}getVehicle(){if(!this.isInAnyVehicle())return;const t=nd(this.id);return[...K.values()].find(i=>i.id===t)}getVehicleSeat(){return rd(this.id)}getSurfingVehicle(){const t=Qo(this.id);if(t!==N.VEHICLE_ID)return[...K.values()].find(i=>i.id===t)}applyAnimation(t,i,a=4.1,n=!1,r=!0,s=!0,l=!1,o=0,d=!1){if(!tt(t,i))throw new Error(`[Player]: Invalid anim library or name ${t} ${i}`);return dd(this.id,t,i,a,n,r,s,l,o,+d)}clearAnimations(t=!1){return cd(this.id,t)}getAnimationIndex(){return _d(this.id)}getAnimationName(t=this.getAnimationIndex()){const[i,a]=Gs(t);return{index:t,animLib:i,animName:a}}setShopName(t){return $o(this.id,t)}setPosFindZ(t,i,a){return Jl(this.id,t,i,a)}setWorldBounds(t,i,a,n){return vd(this.id,t,i,a,n)}clearWorldBounds(){return wd(this.id)}setChatBubble(t,i,a,n,r=this.charset){return Bm(this.id,t,i,a,n,r)}getDistanceFromPoint(t,i,a){return io(this.id,t,i,a)}getCustomSkin(){return Pd(this.id)}getTargetPlayer(){const t=mo(this.id);if(t!==N.PLAYER_ID)return m.getInstances().find(i=>i.id===t)}getLastShotVectors(){return id(this.id)}getWeapon(){return Go(this.id)}getWeaponData(t){return vo(this.id,t)}getWeaponState(){return uo(this.id)}giveWeapon(t,i){return No(this.id,t,i)}setAmmo(t,i){return _o(this.id,t,i)}getAmmo(){return ho(this.id)}setArmedWeapon(t){return Do(this.id,t)}clearDeathMessage(){for(let t=0;t<5;t++)this.sendDeathMessageToPlayer(N.PLAYER_ID,N.PLAYER_ID,Je.CONNECT)}sendDeathMessage(t,i){return ms(t===N.PLAYER_ID?t:t.id,this.id,i)}sendDeathMessageToPlayer(t,i,a){return Xl(this.id,t===N.PLAYER_ID?t:t.id,i===N.PLAYER_ID?i:i.id,a)}setSpawnInfo(t,i,a,n,r,s,l,o,d,c,h,p){return t<0||t>N.NO_TEAM||i<0||i>311||i===74||o<0||c<0||p<0?!1:Zs(this.id,t,i,a,n,r,s,l,o,d,c,h,p)}redirectDownload(t){return um(this.id,t)}sendClientCheck(t,i,a,n){const r=[2,5,69,70,71,72];if(!r.includes(t))throw new Error(`[Player]: sendClientCheck valid types are ${r.toString()}`);return new Promise((s,l)=>{if(this.isPaused)return l("[Player]: An attempt to check the player client response, but the player paused the game");const o="[Player]: An attempt to check the player client response timed out",d=this.getPing(),c=(d>=200?0:d)+200;let h=null;const p=di(({player:g,actionId:f,memAddr:y,data:w,next:G})=>(g!==this||(h&&(clearTimeout(h),h=null),s({actionId:f,memAddr:y,data:w})),G()));h=setTimeout(()=>{p(),l(o)},c),ul(this.id,t,i,a,n)})}selectTextDraw(t){Su(this.id,t)}cancelSelectTextDraw(){yu(this.id)}beginObjectSelecting(){return om(this.id)}endObjectEditing(){return dm(this.id)}getSurfingObject(){const t=qo(this.id);if(t!==N.OBJECT_ID)return X.get(t)}getSurfingPlayerObject(){const t=ed(this.id);if(t!==N.OBJECT_ID)return X.get(t)}isAttachedObjectSlotUsed(t){return Sm(this.id,t)}editAttachedObject(t){return lm(this.id,t)}setAttachedObject(t,i,a,n=0,r=0,s=0,l=0,o=0,d=0,c=1,h=1,p=1,g=0,f=0){return this.isAttachedObjectSlotUsed(t)?0:gm(this.id,t,i,a,n,r,s,l,o,d,c,h,p,g,f)}removeAttachedObject(t){return this.isAttachedObjectSlotUsed(t)?Pm(this.id,t):0}getAnimationFlags(){return samp.callNative("GetPlayerAnimationFlags","i",this.id)}getLastSyncedTrailerID(){return samp.callNative("GetPlayerLastSyncedTrailerID","i",this.id)}getLastSyncedVehicleID(){return samp.callNative("GetPlayerLastSyncedVehicleID","i",this.id)}toggleWidescreen(t){return Sl(this.id,t)}isWidescreenToggled(){return yl(this.id)}getSpawnInfo(){return Ys(this.id)}getSkillLevel(t){return Il(this.id,t)}isCheckpointActive(){return L_(this.id)}getCheckpoint(){return b_(this.id)}isRaceCheckpointActive(){return O_(this.id)}getRaceCheckpoint(){return G_(this.id)}getWorldBounds(){return Al(this.id)}isInModShop(){return C_(this.id)}getSirenState(){return N_(this.id)}getLandingGearState(){return T_(this.id)}getHydraReactorAngle(){return D_(this.id)}getTrainSpeed(){return v_(this.id)}getZAim(){return Cl(this.id)}getSurfingOffsets(){return Nl(this.id)}getRotationQuat(){return Tl(this.id)}getDialogID(){return Dl(this.id)}getSpectateID(){return vl(this.id)}getSpectateType(){return wl(this.id)}getRawIp(){return fl(this.id)}setGravity(t){return Rl(this.id,t)}getGravity(){return Ll(this.id)}setAdmin(t){return rl(this.id,t)}isSpawned(){return bl(this.id)}isControllable(){return Ol(this.id)}isCameraTargetEnabled(){return Gl(this.id)}toggleGhostMode(t){return Fl(this.id,t)}getGhostMode(){return Bl(this.id)}getBuildingsRemoved(){return xl(this.id)}getAttachedObject(t){return fm(this.id,t)}removeWeapon(t){return kl(this.id,t)}isUsingOfficialClient(){return Vl(this.id)}allowWeapons(t){return Wl(this.id,t)}areWeaponsAllowed(){return jl(this.id)}gpci(t=this.charset){return hl(this.id,t)}isCuffed(){return Zd(this.id)}isInDriveByMode(){return Xd(this.id)}isAndroid(){return this.isConnected()&&this[te].isAndroid}isPC(){return this.isConnected()&&!this[te].isAndroid}isUsingOmp(){return Yd(this.id)}simulateCommand(t){return M.simulate(this,t)}static getInstance(t){return j.get(t)}static getInstances(){return[...j.values()]}}const[ci]=u({name:"OnDialogResponseI18n",identifier:"iiiiai",defaultValue:!1,beforeEach(e,t,i,a,n){const r=m.getInstance(e),s=I.decodeFromBuf(n,r.charset);return{player:r,dialogId:t,response:i,listItem:a,buffer:n,inputText:s}}});ci(({next:e,player:t,dialogId:i,response:a,listItem:n,buffer:r,inputText:s})=>{const l=R.waitingQueue.get(t);return!l||l.showId!==i||l.resolve({response:a,listItem:n,buffer:r,inputText:s}),e()});class R{id=-1;static showingIds=[];static maxDialogId=32767;dialog;static waitingQueue=new WeakMap;constructor(t={style:ze.MSGBOX,caption:"",info:"",button1:"",button2:""}){this.dialog=t}get style(){return this.dialog.style}set style(t){this.dialog.style=t}get caption(){return this.dialog.caption}set caption(t){this.dialog.caption=t}get info(){return this.dialog.info}set info(t){this.dialog.info=t}get button1(){return this.dialog.button1}set button1(t){this.dialog.button1=t}get button2(){return this.dialog.button2}set button2(t){this.dialog.button2=t}static delDialogTask(t,i=!1){const a=R.waitingQueue.get(t);if(!a)return!1;i&&a.reject("[Dialog]: player timeout does not respond or second request show dialog"),R.waitingQueue.delete(t);const n=R.showingIds.indexOf(a.showId);return n>-1&&R.showingIds.splice(n,1),!0}show(t){return new Promise((i,a)=>{for(R.close(t);this.id===-1||R.showingIds.includes(this.id);){if(R.showingIds.length>=R.maxDialogId){this.id=-1;break}this.id=Math.floor(Math.random()*(R.maxDialogId+1))}if(this.id===-1){a("[Dialog]: The maximum number of dialogs is reached");return}R.showingIds.push(this.id),R.waitingQueue.set(t,{resolve:i,reject:a,showId:this.id}),R.__inject__ShowPlayerDialog(t,this.id,this.dialog)}).catch(i=>Promise.reject(i)).finally(()=>R.delDialogTask(t))}static close(t){R.delDialogTask(t,!0),Ml(t.id)}static __inject__ShowPlayerDialog=Cm}const[_i]=u({name:"OnPlayerConnect",identifier:"i",beforeEach(e){const t=new m(e);return j.set(e,t),R.close(t),{player:t}}}),[hi]=u({name:"OnPlayerDisconnect",identifier:"ii",beforeEach(e,t){return{player:j.get(e),reason:t}},afterEach({player:e}){j.delete(e.id)}}),[ui]=u({name:"OnPlayerUpdate",identifier:"i",beforeEach(e){return{player:m.getInstance(e)}}}),[tp]=u({name:"OnPlayerTextI18n",identifier:"iai",beforeEach(e,t){const i=m.getInstance(e);return{player:i,text:I.decodeFromBuf(t,i.charset),buffer:t}}}),[ip]=u({name:"OnPlayerEnterExitModShop",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),enterExit:t,interior:i}}}),[ap]=u({name:"OnPlayerClickMap",identifier:"ifff",defaultValue:!1,beforeEach(e,t,i,a){return{player:m.getInstance(e),fX:t,fY:i,fZ:a}}}),[np]=u({name:"OnPlayerClickPlayer",identifier:"iii",defaultValue:!1,beforeEach(e,t,i){return{player:m.getInstance(e),clickedPlayer:m.getInstance(t),source:i}}}),[rp]=u({name:"OnPlayerDeath",identifier:"iii",beforeEach(e,t,i){const a=m.getInstance(t)||N.PLAYER_ID;return{player:m.getInstance(e),killer:a,reason:i}}}),[sp]=u({name:"OnPlayerGiveDamage",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,n){return{player:m.getInstance(e),damage:m.getInstance(t),amount:i,weapon:a,bodyPart:n}}}),[lp]=u({name:"OnPlayerKeyStateChange",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),newKeys:t,oldKeys:i}}}),[op]=u({name:"OnPlayerRequestClass",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),classId:t}}}),[dp]=u({name:"OnPlayerRequestSpawn",identifier:"i",beforeEach(e){return{player:m.getInstance(e)}}}),[cp]=u({name:"OnPlayerSpawn",identifier:"i",beforeEach(e){return{player:m.getInstance(e)}}}),[_p]=u({name:"OnPlayerStateChange",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),newState:t,oldState:i}}}),[hp]=u({name:"OnPlayerStreamIn",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[up]=u({name:"OnPlayerStreamOut",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[mp]=u({name:"OnPlayerTakeDamage",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,n){const r=m.getInstance(t)||N.PLAYER_ID;return{player:m.getInstance(e),damage:r,amount:i,weapon:a,bodyPart:n}}}),[pp]=u({name:"OnPlayerInteriorChange",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),newInteriorId:t,oldInteriorId:i}}}),[fp]=u({name:"OnPlayerRequestDownload",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),type:t,crc:i}}}),[gp]=u({name:"OnPlayerFinishedDownloading",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),virtualWorld:t}}}),[Pp]=u({name:"OnPlayerWeaponShot",identifier:"iiiifff",beforeEach(e,t,i,a,n,r,s){return{player:m.getInstance(e),weapon:t,hitType:i,hitId:a,fX:n,fY:r,fZ:s}}});let Fe=null;const x=new Map,Pe=new Map;function mi(e){if(!e.isConnected()){x.has(e)&&(clearInterval(x.get(e)),x.delete(e),Pe.delete(e));return}let t=Pe.get(e)||1;if(t>=m.MAX_CHECK_ANDROID_DELAY){clearInterval(x.get(e)),x.delete(e),Pe.delete(e),it(e,!0);return}e.sendClientCheck(72,0,0,2).then(({actionId:i})=>{i===72&&(e[te].isAndroid=!1,x.has(e)&&(clearInterval(x.get(e)),x.delete(e),Pe.delete(e)),it(e,!1))}).catch(()=>{}),t++,Pe.set(e,t)}const[Sp,yp]=u({name:"OnPlayerPause",isNative:!1,beforeEach(e,t){return{player:e,pausedAt:t}}}),[Ip,Ep]=u({name:"OnPlayerResume",isNative:!1,beforeEach(e,t,i,a){return{player:e,pausedAt:t,now:i,diff:a}}}),[Ap,Cp]=u({name:"OnPlayerFpsUpdate",isNative:!1,beforeEach(e,t,i){return{player:e,newFps:t,oldFps:i}}}),[Np,it]=u({name:"OnAndroidCheck",isNative:!1,beforeEach(e,t){return{player:e,result:t}}});_i(({player:e,next:t})=>{if(!Fe&&m.getInstances().length&&(Fe=setInterval(()=>{m.getInstances().filter(a=>{const n=a.getState()!==Ne.NONE;return!a.isPaused&&!a.isNpc()&&n}).forEach(a=>{Date.now()-a.lastUpdateTick>1e3&&(a.isPaused=!0,yp(a,a.lastUpdateTick))})},500)),e.isNpc())return e[te].isAndroid=!1,t();if(m.SKIP_CHECK_ANDROID)return e[te].isAndroid=!e.isUsingOfficialClient(),it(e,e[te].isAndroid),t();mi(e);const i=setInterval(()=>mi(e),1e3);return x.set(e,i),t()}),hi(({player:e,next:t})=>(Fe&&m.getInstances().length<=1&&(clearInterval(Fe),Fe=null),x.has(e)&&(clearInterval(x.get(e)),x.delete(e),Pe.delete(e)),t()));function Tp(e){if(!m.isConnected(e.id))return;const t=Date.now();if(t-e.lastUpdateFpsTick>=1e3){const i=e.getDrunkLevel();if(i<100){e.setDrunkLevel(2e3),e.lastDrunkLevel=2e3,e.lastFps=0;return}e.lastUpdateFpsTick=t;const a=e.lastFps,n=e.lastDrunkLevel-i-1;e.lastFps=n,e.lastDrunkLevel=i,Cp(e,n,a)}}ui(({player:e,next:t})=>{if(!e.isNpc()){const i=Date.now();e.isPaused&&(e.isPaused=!1,Ep(e,e.lastUpdateTick,i,i-e.lastUpdateTick)),e.lastUpdateTick=i,Tp(e)}return t()});const at=Object.freeze({onConnect:_i,onDisconnect:hi,onPause:Sp,onResume:Ip,onUpdate:ui,onText:tp,onEnterExitModShop:ip,onClickMap:ap,onClickPlayer:np,onDeath:rp,onGiveDamage:sp,onKeyStateChange:lp,onRequestClass:op,onRequestSpawn:dp,onSpawn:cp,onStateChange:_p,onStreamIn:hp,onStreamOut:up,onTakeDamage:mp,onInteriorChange:pp,onRequestDownload:fp,onFinishedDownloading:gp,onCheckResponse:di,onCommandReceived:Vm,onCommandPerformed:Um,onCommandError:jm,onCommandText:M.on,offCommandText:M.off,onDialogResponse:ci,onLocaleChange:Jm,onCharsetChange:qm,onFpsUpdate:Ap,onWeaponShot:Pp,onAndroidCheck:Np,onCommandTextRaw:Xm}),Dp=[8,9,10,25,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,96,97,98],vp=[[13,18,19,20,21,24],[1,3,4,5,6,7,13,17,19,20,142,143,144,145],[],[],[0,2,7,13,16,17,19,20,21],[0,1,14,18,19,20,21,23],[],[],[],[],[1,3,7,13,17,19,20,21,23,24],[],[],[],[],[1,3,7,17,18,19,23],[],[],[2,6,16,20,21],[],[1,3,4,5,19,21],[0,14,16,18,19,20,21,23],[7,13,17,19,20,21],[],[],[],[1,3,4,5,6,19,21],[],[],[],null,[],[],[],[],[],[1,3,6,7,13,17,19,20,21,22],[],[],[1,3,7,13,17,23,142,143,144,145],[],[],[],[],[],[],null,[],null,null,[],[],null,null,null,[],[],[],[],[],[],null,null,null,[],[],[],[],null,[],[],[],null,null,[],[],[],[6,7,17,18,19,20,21],[4,5,12,13,20,21,22,24],[],[],null,[],[],null,[],[],[],[],[0,2,4,5,6,13,16,18,19,20,24],[],[3,7,14,17,18,19,20,21,23,142,143,144,145],[0,4,5,6,16],null,[],[],[1,2,3,6,7,11,17,19,20,23,142,143],[],[],[],[13,19,20,21,24],[],[],[],[],[],[],[],[],null,null,[],[],[],[],[],[0,2,4,7,15,16,17,18,19,20,21],[2,3,7,16,17,18,19,20,23,142,143,144,145],[1,3,5,6,7,13,17,18,20,23,142,143,144,145],[],[],null,null,null,[],[],[],[1,7,14,15,17,18,20,21],[],[1,3,6,7,11,12,17,18,19,20,23],[],[],[],[],[100,101,106,122,123,124,125,126,127,178,179,180,185],[109,110,113,114,115,116,117,118,119,120,121],[103,104,105,107,108,128,181,182,183,184],null,null,[],[1,4,6,7,17,18,19,20,23,24,142,143,144,145],[],[14,15,18,19,20,21,144,145],[],[],[],[1,2,4,6,7,17,18,19,23,24,142,143,144,145],[0,3,16,18,19,20,21,142,143],[],[1,3,7,11,12,17,18,19,20,23,142,143,144,145],[1,3,4,5,6,18,19,20,23,142,143,144,145],[2,3,5,6,16,18,19,20,21,23],[],[],[],[],[],[],[88,89,90,91,92,93,94,95,163,164,165,166,167,168],[65,66,67,68,69,70,71,72,158,159,160,161,162,173],[26,27,28,29,30,31,32,33,138,139,140,141,169,170],[55,56,57,58,59,60,61,62,63,64,154,155,156,157],[34,35,36,37,38,39,40,41,146,147,148,149,171,172],[],[],[45,46,47,48,49,50,51,52,53,54,150,151,152,153],[],[102,129,130,131,132,133,186,187,188,189],[],null,null,[],[],[],[],[42,43,44,99,174,175,176,177],[134,135,136,137,190,191,192,193],[],[],[],[1,6,7,17,18,20,23],null,[],[],[],[0,1,2,3,6,7,13,14,15,16,17,18,19,20,21,22,23,24,142,143,144,145],null,[],[],[0,4,5,6,7,13,16,17,18,20,24,144,145],null,[],[],[],[],null,[],[],[],[],[4,5,6,7,13,17,18,20,22],[],[],[1,6,7,17,18,19,20,23,24,142,143,144,145],[],[],[],[],[],[],[],[]],wp=(e,t)=>{if(!nt(e))return!1;const i=vp[e-400];if(i===null)return!1;const a=t-1e3;return Dp.includes(a)||i.includes(a)},nt=e=>e>=400&&e<=611,Rp=(e,t)=>{if(t<0||t>2)return!1;const i=new Map([[483,0],[534,2],[535,2],[536,2],[558,2],[559,2],[560,2],[561,2],[562,2],[565,2],[567,2],[575,1],[576,2]]).get(e);return i===void 0?!1:t<=i},[pi]=u({name:"OnGameModeInit",identifier:""}),[fi]=u({name:"OnGameModeExit",identifier:""}),[Lp]=u({name:"OnIncomingConnection",identifier:"isi",defaultValue:!1,beforeEach(e,t,i){return{playerId:e,ipAddress:t,port:i}}}),[bp]=u({name:"OnRconCommandI18n",identifier:"ai",defaultValue:!1,beforeEach(e){return{buffer:e,cmd:I.decodeFromBuf(e)}}}),[Op]=u({name:"OnRconLoginAttemptI18n",identifier:"aiaii",beforeEach(e,t,i){return{ip:I.decodeFromBuf(e),password:I.decodeFromBuf(t),success:!!i,ipBuffer:e,passwordBuffer:t}}}),ce=[],Se=[],rt=new Map,st=async e=>{try{return await new Promise((t,i)=>{const a=ce.findIndex(l=>l.name===e);if(a===-1)return;const n=ce[a];function r(l){l.length&&rt.set(e,l),ce.splice(a,1),Se.push(n),setTimeout(t)}const s=n.load();s instanceof Promise?s.then(r).catch(i):r(s)})}catch(t){throw new Error(`[GameMode]: script ${e} load fail
3
+ err:${t}`)}},lt=async e=>{try{return await new Promise((t,i)=>{const a=Se.findIndex(o=>o.name===e);if(a===-1)return;const n=Se[a],r=rt.get(e);r&&(r.forEach(o=>o()),rt.delete(e));function s(){Se.splice(a,1),ce.push(n),setTimeout(t)}const l=n.unload();l instanceof Promise?l.then(s).catch(i):s()})}catch(t){throw new Error(`[GameMode]: script ${e} unload fail
4
+ ${t}`)}},Gp=async e=>{await lt(e),await st(e)};pi(async({next:e})=>{const t=ce.map(i=>i.name);for(const i of t)await st(i);return e()}),fi(async({next:e})=>{const t=Se.map(i=>i.name);for(const i of t)await lt(i);return e()});const Fp=function(e,...t){if(ce.some(i=>i.name===e.name)||Se.some(i=>i.name===e.name))throw new Error(`[GameMode]: script ${e.name} has already been applied`);e.load=e.load.bind(e,...t),ce.push(e)};class L{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static onInit=pi;static onExit=fi;static onIncomingConnection=Lp;static onRconCommand=bp;static onRconLoginAttempt=Op;static use(t,...i){return Fp(t,...i),this}static loadUseScript=st;static reloadUseScript=Gp;static unloadUseScript=lt;static enableCmdCaseSensitive=M.enableCaseSensitive;static disableCmdCaseSensitive=M.disableCaseSensitive;static isCmdCaseSensitive=M.isCaseSensitive;static supportAllNickname(){for(let t=0;t<=255;t++)this.isNickNameCharacterAllowed(t)||this.allowNickNameCharacter(t,!0)}static setWeather(t){if(t<0||t>255)throw new Error("[GameMode]: The valid weather value is only 0 to 255");return Es(t)}static setWorldTime(t){if(t<0||t>23)throw new Error("[GameMode]: The valid hour value is only 0 to 23");return Ss(t)}static getWorldTime=ys;static setTeamCount=Ws;static sendRconCommand=vm;static addPlayerClass=js;static addPlayerClassEx=Ks;static createExplosion(t,i,a,n,r){if(n<0||n>13)throw new Error("[GameMode]: The valid explosion type value is only 0 to 13");return Ns(t,i,a,n,r)}static manualVehicleEngineAndLights=Mc;static blockIpAddress=cl;static unBlockIpAddress=_l;static getServerTickRate=Os;static addSimpleModel(t,i,a,n,r){return this.checkSimpleModel(t,i,a,n,r)?_m(t,i,a,n,r):0}static addSimpleModelTimed(t,i,a,n,r,s,l){return this.checkSimpleModel(t,i,a,n,r,s,l)?hm(t,i,a,n,r,s,l):0}static checkSimpleModel(t,i,a,n,r,s,l){if(t<-1)throw new Error("[GameMode]: AddSimpleModel - Error virtual world");if(i<0)throw new Error("[GameMode]: AddSimpleModel - Error baseId");if(a>-1e3||a<-3e4)throw new Error("[GameMode]: AddSimpleModel - Error newId range");if(n.trim().length===0)throw new Error("[GameMode]: AddSimpleModel - Empty dffName");if(r.trim().length===0)throw new Error("[GameMode]: AddSimpleModel - Empty txdName");if(s!==void 0&&(s<0||s>23))throw new Error("[GameMode]: AddSimpleModel - Error time on range");if(l!==void 0&&(l<0||l>23))throw new Error("[GameMode]: AddSimpleModel - Error time off range");return 1}static isValidCustomModel=ai;static getCustomModePath=ym;static getConsoleVarAsString(t,i="utf8"){const{consoleVarBuf:a,ret:n}=ns(t);return{consoleVar:I.decodeFromBuf(I.getValidStr(a),i),ret:n}}static getRestartTime=_s;static setRestartTime=cs;static allowAdminTeleport=Qr;static isAdminTeleportAllowed=qr;static allowInteriorWeapons=es;static areInteriorWeaponsAllowed=ts;static areAllAnimationsEnabled=is;static enableAllAnimations=as;static enableStuntBonusForAll=Fs;static enableVehicleFriendlyFire=Is;static enableZoneNames=Ts;static disableInteriorEnterExits=vs;static setGameModeText=fs;static getGravity=As;static setGravity=Cs;static showNameTags=gs;static disableNameTagLOS=Rs;static usePlayerPedAnims=Ds;static showPlayerMarkers=Ps;static limitPlayerMarkerRadius=bs;static limitGlobalChatRadius=Ls;static setNameTagDrawDistance=ws;static findModelFileNameFromCRC=mm;static findTextureFileNameFromCRC=pm;static getWeaponName=Ms;static setObjectsDefaultCameraCollision=cm;static vectorSize=qe;static clearBanList=ml;static isBanned=pl;static isValidNickName=Kr;static allowNickNameCharacter=Zr;static isNickNameCharacterAllowed=Xr;static addServerRule=Yr;static setServerRule=zr;static isValidServerRule=$r;static removeServerRule=Jr;static getWeaponSlot=ks;static getAvailableClasses=Vs;static getPlayerClass=Hs;static editPlayerClass=Us;static toggleChatTextReplacement=Bs;static chatTextReplacementToggled=xs;static getConsoleVarAsInt=rs;static getConsoleVarAsBool=ss;static getWeather=ls;static getServerRuleFlag=os;static setServerRuleFlags=ds}const A={skip:!1};L.onInit(({next:e})=>(A.skip=!1,e())),L.onExit(({next:e})=>(A.skip=!0,e()));class C{sourceInfo=null;isStatic=!1;static createdCount=0;_id=-1;get id(){return this._id}constructor(t,i=!1){if(typeof t=="number"){const a=C.getInstance(t);if(a)return a;this._id=t,K.set(this._id,this),this.isValid()&&C.createdCount++}else this.sourceInfo=t,this.isStatic=i}create(t=!1){if(this.id!==-1)throw new Error("[Vehicle]: Unable to create again");if(!this.sourceInfo)throw new Error("[Vehicle]: Unable to create with only id");if(C.createdCount===F.MAX_VEHICLES)throw new Error("[Vehicle]: Unable to continue to create vehicle, maximum allowable quantity has been reached");const{modelId:i,x:a,y:n,z:r,zAngle:s,color:l,respawnDelay:o,addSiren:d}=this.sourceInfo;if(!(!t&&!nt(i))){if(this.isStatic){if(o===void 0){this._id=C.__inject_AddStaticVehicle(i,a,n,r,s,l[0],l[1]);return}this._id=C.__inject_AddStaticVehicleEx(i,a,n,r,s,l[0],l[1],o||-1,d||!1)}else this._id=C.__inject_CreateVehicle(i,a,n,r,s,l[0],l[1],o||-1,d||!1);C.createdCount++,K.set(this._id,this)}}destroy(){if(this.id===-1&&!A.skip)throw new Error("[Vehicle]: Unable to destroy the vehicle before create");A.skip||C.__inject_DestroyVehicle(this.id),C.createdCount--,K.delete(this._id),this._id=-1}addComponent(t){if(this.id===-1)return 0;if(!wp(this.getModel(),t))throw new Error(`[Vehicle]: Invalid component id ${t} attempted to attach to the vehicle ${this}`);return zc(this.id,t)}removeComponent(t){if(this.getComponentInSlot(C.getComponentType(t))===0)throw new Error(`[Vehicle]: component id ${t} does not exist on this vehicle`);return $c(this.id,t)}getComponentInSlot(t){return l_(this.id,t)}linkToInterior(t){return this.id===-1?0:Yc(this.id,t)}setVirtualWorld(t){return this.id===-1?0:f_(this.id,t)}getVirtualWorld(){return this.id===-1?0:g_(this.id)}repair(){return this.id===-1?0:d_(this.id)}setPos(t,i,a){return this.id===-1?!1:Oc(this.id,t,i,a)}getPos(){return bc(this.id)}getHealth(){return e_(this.id)}setHealth(t){return this.id===-1?0:qc(this.id,t)}isPlayerIn(t){return this.id===-1?!1:Td(t.id,this.id)}putPlayerIn(t,i){if(this.id===-1||i<0)return 0;if(i>4)throw new Error("[Vehicle]: If the seat is invalid or is taken, will cause a crash when they EXIT the vehicle.");return ad(t.id,this.id,i)}getZAngle(){return Gc(this.id)}setZAngle(t){return this.id===-1?0:xc(this.id,t)}setNumberPlate(t){if(this.id===-1)return 0;if(t.length<1||t.length>32)throw new Error("[Vehicle]: The length of the number plate ranges up to 32 characters");if(!/^[a-zA-Z0-9]+$/.test(t))throw new Error("[Vehicle]: number plates only allow letters and numbers");return r_(this.id,t)}changeColors(t,i){return this.id===-1?0:Jc(this.id,t,i)}setVelocity(t,i,a){return this.id===-1?!1:__(this.id,t,i,a)}getVelocity(){return c_(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:i,y:a,z:n}=this.getVelocity();return qe(i,a,n)*t}setAngularVelocity(t,i,a){return this.id===-1?!1:h_(this.id,t,i,a)}getDamageStatus(){return u_(this.id)}updateDamageStatus(t,i,a,n){return m_(this.id,t,i,a,n)}getDistanceFromPoint(t,i,a){return Bc(this.id,t,i,a)}getModel(){return s_(this.id)}static getModelInfo(t,i){return p_(t,i)}getModelInfo(t){return C.getModelInfo(this.getModel(),t)}getRotationQuat(){return Fc(this.id)}setRespawn(){return this.id===-1?0:Xc(this.id)}isStreamedIn(t){return this.id===-1?!1:Lc(this.id,t.id)}setParamsCarDoors(t,i,a,n){return this.id===-1?0:Wc(this.id,t,i,a,n)}setParamsCarWindows(t,i,a,n){return this.id===-1?0:Kc(this.id,t,i,a,n)}getParamsCarDoors(){return jc(this.id)}getParamsCarWindows(){return Zc(this.id)}setParamsEx(t,i,a,n,r,s,l){return this.id===-1?0:Vc(this.id,t,i,a,n,r,s,l)}getParamsEx(){if(this.id===-1)return{engine:-1,lights:-1,alarm:-1,doors:-1,bonnet:-1,boot:-1,objective:-1};const[t,i,a,n,r,s,l]=Hc(this.id);return{engine:t,lights:i,alarm:a,doors:n,bonnet:r,boot:s,objective:l}}toggleEngine(t){if(this.id===-1)return 0;const{lights:i,alarm:a,doors:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(t,i,a,n,r,s,l)}toggleLights(t){if(this.id===-1)return 0;const{engine:i,alarm:a,doors:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(i,t,a,n,r,s,l)}toggleAlarm(t){if(this.id===-1)return 0;const{engine:i,lights:a,doors:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(i,a,t,n,r,s,l)}toggleDoors(t){if(this.id===-1)return 0;const{engine:i,lights:a,alarm:n,bonnet:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(i,a,n,t,r,s,l)}toggleBonnet(t){if(this.id===-1)return 0;const{engine:i,lights:a,alarm:n,doors:r,boot:s,objective:l}=this.getParamsEx();return this.setParamsEx(i,a,n,r,t,s,l)}toggleBoot(t){if(this.id===-1)return 0;const{engine:i,lights:a,alarm:n,doors:r,bonnet:s,objective:l}=this.getParamsEx();return this.setParamsEx(i,a,n,r,s,t,l)}toggleObjective(t){if(this.id===-1)return 0;const{engine:i,lights:a,alarm:n,doors:r,bonnet:s,boot:l}=this.getParamsEx();return this.setParamsEx(i,a,n,r,s,l,t)}getParamsSirenState(){return this.id===-1?-2:Uc(this.id)}setParamsForPlayer(t,i,a){return this.id===-1?0:kc(this.id,t.id,i,a)}isTrailerAttached(){return this.id===-1?!1:a_(this.id)}changePaintjob(t){return this.id===-1||!Rp(this.getModel(),t)?0:(this.changeColors("#fff","#fff"),Qc(this.id,t),1)}attachTrailer(t){return this.id===-1?0:t_(t.id,this.id)}detachTrailer(){this.isTrailerAttached()&&i_(this.id)}getTrailer(){return C.getInstance(n_(this.id))}isValid(){return A.skip&&this.id!==-1?!0:C.isValid(this.id)}getMatrix(){return Dc(this.id)}getTrainSpeed(){return this.id===-1?0:Tc(this.id)}getHydraReactorAngle(){return this.id===-1?0:Nc(this.id)}getLandingGearState(){return this.id===-1?0:Cc(this.id)}getSirenState(){return this.id===-1?0:Ac(this.id)}getDriver(){return j.get(Ic(this.id))}getLastDriver(){return j.get(yc(this.id))}isSirenEnabled(){return Pc(this.id)}toggleSirenEnabled(t){return this.id===-1?0:fc(this.id,t)}setParamsSirenState(t){return this.id===-1?0:gc(this.id,t)}isDead(){return this.id===-1?!0:uc(this.id)}setDead(t){return this.id===-1?!1:mc(this.id,t)}setBeenOccupied(t){return this.id===-1?!1:pc(this.id,t)}getRespawnTick(){return this.id===-1?0:_c(this.id)}setRespawnTick(t){return this.id===-1?!1:hc(this.id,t)}isOccupied(){return this.id===-1?!1:cc(this.id)}hasBeenOccupied(){return this.id===-1?!1:dc(this.id)}getOccupiedTick(){return this.id===-1?0:lc(this.id)}setOccupiedTick(t){return this.id===-1?0:oc(this.id,t)}getCab(){return this.id===-1?0:sc(this.id)}getRespawnDelay(){return this.id===-1?0:rc(this.id)}setRespawnDelay(t){return this.id===-1?0:nc(this.id,t)}getNumberPlate(){return ac(this.id)}getInterior(){return this.id===-1?0:ic(this.id)}getPaintjob(){return this.id===-1?-1:tc(this.id)}getColors(){return ec(this.id)}setSpawnInfo(t,i,a,n,r,s,l,o=-2,d=-2,c=!1){return this.id===-1||!c&&!nt(t)?0:qd(this.id,t,i,a,n,r,E(s),E(l),o,d)}getSpawnInfo(){return Qd(this.id)}getRandomColorPair(){return ti(this.getModel())}show(){return this.id===-1?!1:I_(this.id)}hide(){return this.id===-1?!1:E_(this.id)}isHidden(){return this.id===-1?!1:A_(this.id)}getVehicleOccupant(t){return w_(this.id,t)}getVehicleMaxPassengers(){return ii(this.getModel())}countVehicleOccupants(){return R_(this.getModel())}static getVehicleMaxPassengers=ii;static getRandomColorPair=ti;static getComponentType=o_;static colorIndexToColor=vc;static isValid=P_;static getModelsUsed=Ec;static getModelCount=Sc;static getInstance(t){return K.get(t)}static getInstances(){return[...K.values()]}static __inject_AddStaticVehicle=S_;static __inject_AddStaticVehicleEx=y_;static __inject_CreateVehicle=wc;static __inject_DestroyVehicle=Rc}L.onExit(({next:e})=>(C.getInstances().forEach(t=>t.destroy()),K.clear(),e()));const[Bp]=u({name:"OnVehicleDamageStatusUpdate",identifier:"ii",defaultValue:!1,beforeEach(e,t){return{vehicle:C.getInstance(e),player:m.getInstance(t)}}}),[xp]=u({name:"OnVehicleDeath",identifier:"ii",beforeEach(e,t){return{vehicle:C.getInstance(e),killer:m.getInstance(t)}}}),[kp]=u({name:"OnVehicleMod",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),componentId:i}}}),[Mp]=u({name:"OnVehiclePaintjob",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),paintjobId:i}}}),[Vp]=u({name:"OnVehicleRespray",identifier:"iiii",beforeEach(e,t,i,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),color:[i,a]}}}),[Hp]=u({name:"OnVehicleSirenStateChange",identifier:"iii",defaultValue:!1,beforeEach(e,t,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),state:!!i}}}),[Up]=u({name:"OnVehicleSpawn",identifier:"i",beforeEach(e){return{vehicle:C.getInstance(e)}}}),[Wp]=u({name:"OnVehicleStreamIn",identifier:"ii",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[jp]=u({name:"OnVehicleStreamOut",identifier:"ii",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[Kp]=u({name:"OnPlayerEnterVehicle",identifier:"iii",beforeEach(e,t,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),isPassenger:!!i}}}),[Zp]=u({name:"OnPlayerExitVehicle",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[Xp]=u({name:"OnTrailerUpdate",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[Yp]=u({name:"OnUnoccupiedVehicleUpdate",identifier:"iiiffffff",beforeEach(e,t,i,a,n,r,s,l,o){return{vehicle:C.getInstance(e),player:m.getInstance(t),passengerSeat:i,newX:a,newY:n,newZ:r,velX:s,velY:l,velZ:o}}}),zp=Object.freeze({onDamageStatusUpdate:Bp,onDeath:xp,onMod:kp,onPaintjob:Mp,onRespray:Vp,onSirenStateChange:Hp,onSpawn:Up,onStreamIn:Wp,onStreamOut:jp,onPlayerEnter:Kp,onPlayerExit:Zp,onTrailerUpdate:Xp,onUnoccupiedUpdate:Yp}),[_e]=u({name:"Streamer_OnItemStreamIn",identifier:"iii",beforeEach(e,t,i){return{type:e,id:t,forPlayer:m.getInstance(i)}}}),[he]=u({name:"Streamer_OnItemStreamOut",identifier:"iii",beforeEach(e,t,i){return{type:e,id:t,forPlayer:m.getInstance(i)}}}),[$p]=u({name:"Streamer_OnPluginError",identifier:"s",beforeEach(e){return{error:e}}});class P{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getTickRate=lr;static setTickRate=or;static getPlayerTickRate(t){return dr(t.id)}static setPlayerTickRate(t,i=50){return cr(t.id,i)}static toggleChunkStream=_r;static isToggleChunkStream=hr;static getChunkTickRate(t,i=-1){return i instanceof m?Xt(t,i.id):Xt(t,i)}static setChunkTickRate(t,i,a=-1){return a instanceof m?Yt(t,i,a.id):Yt(t,i,a)}static getChunkSize=ur;static setChunkSize=mr;static getMaxItems=pr;static setMaxItems=fr;static getVisibleItems(t,i=-1){return i instanceof m?zt(t,i.id):zt(t,i)}static setVisibleItems(t,i,a=-1){return a instanceof m?$t(t,i,a.id):$t(t,i,a)}static getRadiusMultiplier(t,i=-1){return i instanceof m?Jt(t,i.id):Jt(t,i)}static setRadiusMultiplier(t,i,a=-1){return a instanceof m?Qt(t,i,a.id):Qt(t,i,a)}static getTypePriority=gr;static setTypePriority=Pr;static getCellDistance=Sr;static setCellDistance=yr;static getCellSize=Ir;static setCellSize=Er;static toggleItemStatic=Ar;static isToggleItemStatic=Cr;static toggleItemInvAreas=Nr;static isToggleItemInvAreas=Tr;static toggleItemCallbacks=Dr;static isToggleItemCallbacks=vr;static toggleErrorCallback=wr;static isToggleErrorCallback=Rr;static amxUnloadDestroyItems=Lr;static processActiveItems=br;static toggleIdleUpdate(t,i){return Or(t.id,i)}static isToggleIdleUpdate(t){return Gr(t.id)}static toggleCameraUpdate(t,i){return Fr(t.id,i)}static isToggleCameraUpdate(t){return Br(t.id)}static toggleItemUpdate(t,i,a){return xr(t.id,i,a)}static isToggleItemUpdate(t,i){return kr(t.id,i)}static getLastUpdateTime(){return Mr()}static update(t,i=-1){return Vr(t.id,i)}static updateEx(t,i,a,n,r,s,l,o,d){return Hr(t.id,i,a,n,r,s,l,o,d)}static getDistanceToItem=hn;static toggleItem(t,i,a,n){return un(t.id,i,a,n)}static isToggleItem(t,i,a){return mn(t.id,i,a)}static toggleAllItems(t,i,a,n=[-1]){return pn(t.id,i,a,n)}static getItemInternalID(t,i,a){return fn(t.id,i,a)}static getItemStreamerID(t,i,a){return gn(t.id,i,a)}static isItemVisible(t,i,a){return Pn(t.id,i,a)}static destroyAllVisibleItems(t,i,a=1){return Sn(t.id,i,a)}static countVisibleItems(t,i,a=1){return yn(t.id,i,a)}static destroyAllItems=In;static countItems=En;static getNearbyItems=An;static getAllVisibleItems(t,i,a){return Cn(t.id,i,a)}static getItemPos=Nn;static setItemPos=Tn;static getItemOffset=Dn;static setItemOffset=vn;static getFloatData=Va;static setFloatData=Ha;static getIntData=Ua;static setIntData=Wa;static getArrayData=ja;static setArrayData=Ka;static isInArrayData=Za;static appendArrayData=Xa;static removeArrayData=Ya;static getArrayDataLength=Zt;static getUpperBound=za;static onPluginError=$p}class k{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=k.getInstance(t);if(i)return i;this._id=t,X.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[StreamerObject]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerObject]: Unable to create with only id");let{streamDistance:t,drawDistance:i,worldId:a,interiorId:n,playerId:r,areaId:s,priority:l}=this.sourceInfo;const{modelId:o,x:d,y:c,z:h,rx:p,ry:g,rz:f,extended:y}=this.sourceInfo;return t??=D.OBJECT_SD,i??=D.OBJECT_DD,l??=0,y?(typeof a=="number"?a=[-1]:a??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof s=="number"?s=[-1]:s??=[-1],this._id=qa(o,d,c,h,p,g,f,t,i,a,n,r,s,l)):(Array.isArray(a)?a=-1:a??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(s)?s=-1:s??=-1,this._id=wn(o,d,c,h,p,g,f,a,n,r,t,i,s,l)),X.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerObject]: Unable to destroy the object before create");return A.skip||Rn(this.id),X.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:k.isValid(this.id)}getModel(){return this.sourceInfo?this.sourceInfo.modelId:P.getIntData(S.OBJECT,this._id,W.MODEL_ID)}getPos(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot get position before create");return bn(this.id)}setPos(t,i,a){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set position before create");return On(this.id,t,i,a)}getRot(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot get rotation before create");return Gn(this.id)}setRot(t,i,a){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set rotation before create");return Fn(this.id,t,i,a)}move(t,i,a,n,r=-1e3,s=-1e3,l=-1e3){if(this.id===-1)throw new Error("[StreamerObject]: Cannot start moving before create");if(n<0)throw new Error("[StreamerObject]: speed must not be less than 0");if(n>120*1e3)throw new Error("[StreamerObject]: speed more than 120 seconds, warn if it's not intentional");return this.isMoving()&&this.stop(),Bn(this.id,t,i,a,n,r,s,l)}stop(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot stop moving before create");return xn(this.id)}isMoving(){return this.id===-1?!1:kn(this.id)}attachCamera(t){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachCamera before both are created");return Mn(t.id,this.id)}attachToObject(t,i,a,n,r,s,l,o=!0){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachToObject before both are created");return Vn(this.id,t.id,i,a,n,r,s,l,o)}attachToPlayer(t,i,a,n,r,s,l){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachToPlayer before both are created");return Hn(this.id,t.id,i,a,n,r,s,l)}attachToVehicle(t,i,a,n,r,s,l){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachToVehicle before both are created");return Un(this.id,t.id,i,a,n,r,s,l)}edit(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to edit before create");return t.endObjectEditing(),Wn(t.id,this.id)}isMaterialUsed(t){return this.id===-1?!1:jn(this.id,t)}removeMaterial(t){return this.id===-1||!this.isMaterialUsed(t)?0:Kn(this.id,t)}getMaterial(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to get material before create");return Gm(this.id,t)}setMaterial(t,i,a,n,r="#000"){if(this.id===-1)throw new Error("[StreamerObject]: Unable to set material before create");return Zn(this.id,t,i,a,n,E(r))}isMaterialTextUsed(t){return this.id===-1?!1:Xn(this.id,t)}removeMaterialText(t){return this.id===-1||!this.isMaterialTextUsed(t)?0:Yn(this.id,t)}getMaterialText(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to get material text before create");return Fm(this.id,t,this.sourceInfo?.charset||"utf8")}setMaterialText(t=this.sourceInfo?.charset,i,a,n=Qe.SIZE_256x128,r="Arial",s=24,l=1,o="#fff",d="#000",c=0){if(this.id===-1)throw new Error("[StreamerObject]: Unable to set material text before create");return this.sourceInfo&&(this.sourceInfo.charset=t),Om(t||"utf8",this.id,i,a,n,r,s,l,E(o),E(d),c)}getPlayerCameraTarget(t){const i=zn(t.id);if(i!==N.OBJECT_ID)return X.get(i)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerObject]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.OBJECT,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.OBJECT,this.id)}setNoCameraCollision(){return $n(this.id)}getNoCameraCollision(){return Jn(this.id)}static isValid=Ln;static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.OBJECT,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return X.get(t)}static getInstances(){return[...X.values()]}}L.onExit(({next:e})=>(k.getInstances().forEach(t=>t.destroy()),X.clear(),e()));const[Jp,Qp]=u({name:"OnDynamicObjectStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[qp,ef]=u({name:"OnDynamicObjectStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});_e(({type:e,id:t,forPlayer:i,next:a})=>e===S.OBJECT?Qp(i,k.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.OBJECT?ef(i,k.getInstance(t)):a());const[tf]=u({name:"OnDynamicObjectMoved",identifier:"i",beforeEach(e){return{object:k.getInstance(e)}}}),[af]=u({name:"OnPlayerEditDynamicObject",identifier:"iiiiiiiii",defaultValue:!1,beforeEach(e,t,i,a,n,r,s,l,o){return{player:m.getInstance(e),object:k.getInstance(t),response:i,x:a,y:n,z:r,rX:s,rY:l,rZ:o}}}),[nf]=u({name:"OnPlayerSelectDynamicObject",identifier:"iiiiii",beforeEach(e,t,i,a,n,r){return{player:m.getInstance(e),object:k.getInstance(t),modelId:i,x:a,y:n,z:r}}}),[rf]=u({name:"OnPlayerShootDynamicObject",identifier:"iiiiii",beforeEach(e,t,i,a,n,r){return{player:m.getInstance(e),object:k.getInstance(i),weapon:t,x:a,y:n,z:r}}}),[sf]=u({name:"OnPlayerEditAttachedObject",identifier:"iiiiifffffffff",defaultValue:!1,beforeEach(e,t,i,a,n,r,s,l,o,d,c,h,p,g){return{player:m.getInstance(e),response:t,index:i,modelId:a,boneId:n,fOffsetX:r,fOffsetY:s,fOffsetZ:l,fRotX:o,fRotY:d,fRotZ:c,fScaleX:h,fScaleY:p,fScaleZ:g}}}),lf=Object.freeze({onMoved:tf,onPlayerEdit:af,onPlayerSelect:nf,onPlayerShoot:rf,onPlayerEditAttached:sf,onStreamIn:Jp,onStreamOut:qp});class ue{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=ue.getInstance(t);if(i)return i;this._id=t,se.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[StreamerMapIcon]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerMapIcon]: Unable to create with only id");let{style:t,streamDistance:i,worldId:a,interiorId:n,playerId:r,areaId:s,priority:l}=this.sourceInfo;const{x:o,y:d,z:c,type:h,color:p,extended:g}=this.sourceInfo;if(h<0||h>63)throw new Error("[StreamerMapIcon]: Invalid map icon type");return t??=Ze.LOCAL,i??=D.MAP_ICON_SD,l??=0,g?(typeof a=="number"?a=[-1]:a??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof s=="number"?s=[-1]:s??=[-1],this._id=nn(o,d,c,h,E(p),t,i,a,n,r,s,l),se.set(this._id,this),this):(Array.isArray(a)?a=-1:a??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(s)?s=-1:s??=-1,this._id=$a(o,d,c,h,E(p),a,n,r,i,t,s,l),se.set(this._id,this),this)}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerMapIcon]: Unable to destroy the map icon before create");return A.skip||Ja(this.id),se.delete(this._id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:ue.isValid(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerMapIcon]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.MAP_ICON,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.MAP_ICON,this.id)}static isValid=Qa;static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.MAP_ICON,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return se.get(t)}static getInstances(){return[...se.values()]}}L.onExit(({next:e})=>(ue.getInstances().forEach(t=>t.destroy()),se.clear(),e()));const[of,df]=u({name:"OnDynamicMapIconStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[cf,_f]=u({name:"OnDynamicMapIconStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});_e(({type:e,id:t,forPlayer:i,next:a})=>e===S.MAP_ICON?df(i,ue.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.MAP_ICON?_f(i,ue.getInstance(t)):a());const hf=Object.freeze({onStreamIn:of,onStreamOut:cf});class V{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=V.getInstance(t);if(i)return i;this._id=t,ge.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[StreamerPickup]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerPickup]: Unable to create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{type:l,modelId:o,x:d,y:c,z:h,extended:p}=this.sourceInfo;if(l<0)throw new Error("[StreamerPickup]: Invalid pickup type");return t??=D.PICKUP_SD,s??=0,p?(typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=V.__inject_CreateDynamicPickupEx(o,l,d,c,h,t,i,a,n,r,s)):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=V.__inject_CreateDynamicPickup(o,l,d,c,h,i,a,n,t,r,s)),ge.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerPickup]: Unable to destroy the pickup before create");return A.skip||V.__inject_DestroyDynamicPickup(this.id),ge.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:V.isValid(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerPickup]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.PICKUP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.PICKUP,this.id)}static isValid=er;static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.PICKUP,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ge.get(t)}static getInstances(){return[...ge.values()]}static __inject_CreateDynamicPickup=Qn;static __inject_CreateDynamicPickupEx=en;static __inject_DestroyDynamicPickup=qn}L.onExit(({next:e})=>(V.getInstances().forEach(t=>t.destroy()),ge.clear(),e()));const[uf,mf]=u({name:"OnDynamicPickupStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[pf,ff]=u({name:"OnDynamicPickupStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});_e(({type:e,id:t,forPlayer:i,next:a})=>e===S.PICKUP?mf(i,V.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.PICKUP?ff(i,V.getInstance(t)):a());const[gf]=u({name:"OnPlayerPickUpDynamicPickup",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),pickup:V.getInstance(t)}}}),Pf=Object.freeze({onPlayerPickUp:gf,onStreamIn:uf,onStreamOut:pf});class z{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=z.getInstance(t);if(i)return i;this._id=t,re.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[StreamerCheckpoint]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerCheckpoint]: Unable to create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{size:l,x:o,y:d,z:c,extended:h}=this.sourceInfo;if(l<0)throw new Error("[StreamerCheckpoint]: Invalid checkpoint size");return t??=D.CP_SD,s??=0,h?(typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=tn(o,d,c,l,t,i,a,n,r,s)):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=Ga(o,d,c,l,i,a,n,t,r,s)),re.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerCheckpoint]: Unable to destroy the checkpoint before create");return A.skip||Fa(this.id),re.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:z.isValid(this.id)}togglePlayer(t,i){if(this.id===-1)throw new Error("[StreamerCheckpoint]: Unable to toggle the player before create");return Ba(t.id,this.id,i),this}isPlayerIn(t){return this.id===-1?!1:ka(t.id,this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerCheckpoint]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.CP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.CP,this.id)}static isValid=Kt;static togglePlayerAll(t,i){return xa(t.id,i)}static getPlayerVisible(t){return re.get(Ma(t.id))}static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.CP,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return re.get(t)}static getInstances(){return[...re.values()]}}L.onExit(({next:e})=>(z.getInstances().forEach(t=>t.destroy()),re.clear(),e()));const[Sf,yf]=u({name:"OnDynamicCheckPointStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[If,Ef]=u({name:"OnDynamicCheckPointStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});_e(({type:e,id:t,forPlayer:i,next:a})=>e===S.CP?yf(i,z.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.CP?Ef(i,z.getInstance(t)):a());const[Af]=u({name:"OnPlayerEnterDynamicCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),cp:z.getInstance(t)}}}),[Cf]=u({name:"OnPlayerLeaveDynamicCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),cp:z.getInstance(t)}}}),Nf=Object.freeze({onPlayerEnter:Af,onPlayerLeave:Cf,onStreamIn:Sf,onStreamOut:If});class ${sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=$.getInstance(t);if(i)return i;this._id=t,le.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[StreamerRaceCP]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerRaceCP]: Unable to create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{type:l,size:o,x:d,y:c,z:h,nextX:p,nextY:g,nextZ:f,extended:y}=this.sourceInfo;if(l<0||l>8)throw new Error("[StreamerRaceCP]: Invalid type");if(o<0)throw new Error("[StreamerRaceCP]: Invalid size");return t??=D.RACE_CP_SD,s??=0,y?(typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=an(l,d,c,h,p,g,f,o,t,i,a,n,r,s)):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=tr(l,d,c,h,p,g,f,o,i,a,n,t,r,s)),le.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerRaceCP]: Unable to destroy the checkpoint before create");return A.skip||ir(this.id),le.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:$.isValid(this.id)}togglePlayer(t,i){if(this.id===-1)throw new Error("[StreamerRaceCP]: Unable to toggle the player before create");return ar(t.id,this.id,i),this}static togglePlayerAll(t,i){return nr(t.id,i)}isPlayerIn(t){return this.id===-1?!1:rr(t.id,this.id)}static getPlayerVisible(t){return le.get(sr(t.id))}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerRaceCP]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.RACE_CP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.RACE_CP,this.id)}static isValid=Kt;static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.RACE_CP,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return le.get(t)}static getInstances(){return[...le.values()]}}L.onExit(({next:e})=>($.getInstances().forEach(t=>t.destroy()),le.clear(),e()));const[Tf,Df]=u({name:"OnDynamicRaceCPStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[vf,wf]=u({name:"OnDynamicRaceCPStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});_e(({type:e,id:t,forPlayer:i,next:a})=>e===S.RACE_CP?Df(i,$.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.RACE_CP?wf(i,$.getInstance(t)):a());const[Rf]=u({name:"OnPlayerEnterDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCP:$.getInstance(t)}}}),[Lf]=u({name:"OnPlayerLeaveDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCp:$.getInstance(t)}}}),bf=Object.freeze({onPlayerEnter:Rf,onPlayerLeave:Lf,onStreamIn:Tf,onStreamOut:vf});class q{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=q.getInstance(t);if(i)return i;this._id=t,Q.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[StreamerActor]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerActor]: Unable to create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:n,areaId:r,priority:s}=this.sourceInfo;const{modelId:l,x:o,y:d,z:c,r:h,invulnerable:p,health:g,extended:f}=this.sourceInfo;return t??=D.ACTOR_SD,s??=0,f?(typeof i=="number"?i=[0]:i??=[0],typeof a=="number"?a=[-1]:a??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof r=="number"?r=[-1]:r??=[-1],this._id=_n(l,o,d,c,h,p,g,t,i,a,n,r,s)):(Array.isArray(i)?i=0:i??=0,Array.isArray(a)?a=-1:a??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,this._id=Wi(l,o,d,c,h,p,g,i,a,n,t,r,s)),Q.set(this.id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerActor]: Unable to destroy the actor before create");return A.skip||ji(this.id),Q.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:q.isValid(this.id)}isStreamedIn(t){return this.id===-1?!1:Zi(this.id,t.id)}getVirtualWorld(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get virtual world before create");return Xi(this.id)}setVirtualWorld(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set virtual world before create");return Yi(this.id,t)}applyAnimation(t,i,a=4.1,n=!1,r=!0,s=!0,l=!1,o=0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to apply animation before create");if(!tt(t,i))throw new Error(`[StreamerActor]: Invalid anim library or name ${t} ${i}`);return zi(this.id,t,i,a,n,r,s,l,o)}clearAnimations(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to clear animation before create");return $i(this.id)}getFacingAngle(){return Ji(this.id)}setFacingAngle(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set facing angle before create");return Qi(this.id,t)}getPos(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get pos before create");return qi(this.id)}setPos(t,i,a){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set pos before create");return ea(this.id,t,i,a)}getHealth(){return ta(this.id)}setHealth(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set health before create");return ia(this.id,t)}isInvulnerable(){return this.id===-1?!1:na(this.id)}setInvulnerable(t=!0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set invulnerable before create");return aa(this.id,t)}getPlayerTarget(t){const i=ra(t.id);return Q.get(i)}getPlayerCameraTarget(t){const i=sa(t.id);return Q.get(i)}getSkin(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get skin before create");return zd(this.id)}setSkin(t,i=!1){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set skin before create");return!i&&(t<0||t>311||t===74)?0:$d(this.id,t)}getSpawnInfo(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get spawn info before create");return Jd(this.id)}getAnimation(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get animation before create");return la(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.ACTOR,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.ACTOR,this.id)}static isValid=Ki;static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.ACTOR,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return Q.get(t)}static getInstances(){return[...Q.values()]}}L.onExit(({next:e})=>(q.getInstances().forEach(t=>t.destroy()),Q.clear(),e()));const[Of]=u({name:"OnDynamicActorStreamIn",identifier:"ii",beforeEach(e,t){return{actor:q.getInstance(e),forPlayer:m.getInstance(t)}}}),[Gf]=u({name:"OnDynamicActorStreamOut",identifier:"ii",beforeEach(e,t){return{actor:q.getInstance(e),forPlayer:m.getInstance(t)}}}),[Ff]=u({name:"OnPlayerGiveDamageDynamicActor",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,n){return{player:m.getInstance(e),actor:q.getInstance(t),amount:i,weapon:a,bodyPart:n}}}),Bf=Object.freeze({onStreamIn:Of,onStreamOut:Gf,onPlayerGiveDamage:Ff});class me{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=me.getInstance(t);if(i)return i;this._id=t,fe.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[Streamer3DTextLabel]: Unable to create again");if(!this.sourceInfo)throw new Error("[Streamer3DTextLabel]: Unable to create with only id");let{attachedPlayer:t,attachedVehicle:i,testLos:a,streamDistance:n,worldId:r,interiorId:s,playerId:l,areaId:o,priority:d}=this.sourceInfo;const{charset:c,text:h,color:p,drawDistance:g,x:f,y,z:w,extended:G}=this.sourceInfo;return t??=N.PLAYER_ID,i??=N.VEHICLE_ID,n??=D.TEXT_3D_LABEL_SD,a??=!1,d??=0,G?(typeof r=="number"?r=[-1]:r??=[-1],typeof s=="number"?s=[-1]:s??=[-1],typeof l=="number"?l=[-1]:l??=[-1],typeof o=="number"?o=[-1]:o??=[-1],this._id=Rm(h,E(p),f,y,w,g,t,i,a,n,r,s,l,o,d,c||"utf8")):(Array.isArray(r)?r=-1:r??=-1,Array.isArray(s)?s=-1:s??=-1,Array.isArray(l)?l=-1:l??=-1,Array.isArray(o)?o=-1:o??=-1,this._id=wm(c||"utf8",h,E(p),f,y,w,g,t,i,a,r,s,l,n,o,d)),fe.set(this.id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[Streamer3DTextLabel]: Unable to destroy before create");return A.skip||Hi(this.id),fe.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:me.isValid(this.id)}getColor(){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to get color before create");return this.sourceInfo?this.sourceInfo.color:P.getIntData(S.TEXT_3D_LABEL,this._id,W.COLOR)}getCharset(){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to get charset before create");return this.sourceInfo?.charset}getText(){return bm(this.id,this.sourceInfo?.charset||"utf8")}updateText(t,i,a){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to update text before create");let n="";return this.sourceInfo&&(n=a||this.sourceInfo.charset||"utf8",this.sourceInfo.charset=n),Lm(this.id,E(t),i,n)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.TEXT_3D_LABEL,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.TEXT_3D_LABEL,this.id)}setOffsets(t,i,a){if(this.id===-1)return 0;const n=P.setFloatData(S.TEXT_3D_LABEL,this.id,W.ATTACH_OFFSET_X,t);return P.setFloatData(S.TEXT_3D_LABEL,this.id,W.ATTACH_OFFSET_Y,i),P.setFloatData(S.TEXT_3D_LABEL,this.id,W.ATTACH_OFFSET_Z,a),this.sourceInfo&&(this.sourceInfo.x=t,this.sourceInfo.y=i,this.sourceInfo.z=a),n}attachToPlayer(t,i,a,n){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Cannot attachToPlayer before created");const r=typeof t=="number"?t:t.id,s=P.setIntData(S.TEXT_3D_LABEL,this.id,W.ATTACHED_PLAYER,r);return r!==N.PLAYER_ID&&this.setOffsets(i,a,n),this.sourceInfo&&(this.sourceInfo.attachedPlayer=r),s}attachToVehicle(t,i,a,n){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Cannot attachToVehicle before created");const r=typeof t=="number"?t:t.id,s=P.setIntData(S.TEXT_3D_LABEL,this.id,W.ATTACHED_VEHICLE,r);return r!==N.VEHICLE_ID&&this.setOffsets(i,a,n),this.sourceInfo&&(this.sourceInfo.attachedVehicle=r),s}static isValid=Ui;static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.TEXT_3D_LABEL,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return fe.get(t)}static getInstances(){return[...fe.values()]}}L.onExit(({next:e})=>(me.getInstances().forEach(t=>t.destroy()),fe.clear(),e()));const[xf,kf]=u({name:"OnDynamic3dTextStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Mf,Vf]=u({name:"OnDynamic3dTextStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});_e(({type:e,id:t,forPlayer:i,next:a})=>e===S.TEXT_3D_LABEL?kf(i,me.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.TEXT_3D_LABEL?Vf(i,me.getInstance(t)):a());const Hf=Object.freeze({onStreamIn:xf,onStreamOut:Mf});class O{sourceInfo=null;_id=-1;get type(){return this.sourceInfo?.type??void 0}get id(){return this._id}constructor(t){if(typeof t=="number"){const i=O.getInstance(t);if(i)return i;this._id=t,ne.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[StreamerArea]: Unable to create again");if(!this.sourceInfo)throw new Error("[StreamerArea]: Unable to create with only id");let{worldId:t,interiorId:i,playerId:a}=this.sourceInfo;const{type:n,extended:r}=this.sourceInfo;if(r)if(typeof t=="number"?t=[-1]:t??=[-1],typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],n==="circle"){const{x:s,y:l,size:o}=this.sourceInfo;if(o<0)throw new Error("[StreamerArea]: Invalid circle extend size");this._id=rn(s,l,o,t,i,a)}else if(n==="cuboid"){const{minX:s,minY:l,minZ:o,maxX:d,maxY:c,maxZ:h}=this.sourceInfo;this._id=dn(s,l,o,d,c,h,t,i,a)}else if(n==="cylinder"){const{x:s,y:l,minZ:o,maxZ:d,size:c}=this.sourceInfo;if(c<0)throw new Error("[StreamerArea]: Invalid cylinder extend size");this._id=sn(s,l,o,d,c,t,i,a)}else if(n==="polygon"){const{points:s,minZ:l,maxZ:o}=this.sourceInfo;if(s.length%2!==0)throw new Error("[StreamerArea]: Unable to create polygon extended with asymmetrical points");this._id=cn(s,l,o,t,i,a)}else if(n==="rectangle"){const{minX:s,minY:l,maxX:o,maxY:d}=this.sourceInfo;this._id=on(s,l,o,d,t,i,a)}else{const{x:s,y:l,z:o,size:d}=this.sourceInfo;if(d<0)throw new Error("[StreamerArea]: Invalid sphere extended size");this._id=ln(s,l,o,d,t,i,a)}else if(Array.isArray(t)?t=-1:t??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,n==="circle"){const{x:s,y:l,size:o}=this.sourceInfo;if(o<0)throw new Error("[StreamerArea]: Invalid circle size");this._id=oa(s,l,o,t,i,a)}else if(n==="cuboid"){const{minX:s,minY:l,minZ:o,maxX:d,maxY:c,maxZ:h}=this.sourceInfo;this._id=ha(s,l,o,d,c,h,t,i,a)}else if(n==="cylinder"){const{x:s,y:l,minZ:o,maxZ:d,size:c}=this.sourceInfo;if(c<0)throw new Error("[StreamerArea]: Invalid cylinder size");this._id=da(s,l,o,d,c,t,i,a)}else if(n==="polygon"){const{points:s,minZ:l,maxZ:o}=this.sourceInfo;if(s.length%2!==0)throw new Error("[StreamerArea]: Unable to create polygon with asymmetrical points");this._id=ua(s,l,o,t,i,a)}else if(n==="rectangle"){const{minX:s,minY:l,maxX:o,maxY:d}=this.sourceInfo;this._id=_a(s,l,o,d,t,i,a)}else{const{x:s,y:l,z:o,size:d}=this.sourceInfo;if(d<0)throw new Error("[StreamerArea]: Invalid sphere size");this._id=ca(s,l,o,d,t,i,a)}return ne.set(this._id,this),this}destroy(){if(this.id===-1&&!A.skip)throw new Error("[StreamerArea]: Unable to destroy the area before create");return A.skip||ma(this.id),ne.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:O.isValid(this.id)}getType(){if(this.id!==-1)throw new Error("[StreamerArea]: Unable to get type before create");return fa(this.id)}getPolygonPoints(){return ga(this.id)}getPolygonNumberPoints(){if(this.id!==-1)throw new Error("[StreamerArea]: Unable to getPolygonNumberPoints number before create");if(this.type!=="polygon")throw new Error("[StreamerArea]: getPolygonNumberPoints invalid area type");return Ht(this.id)}isPlayerIn(t,i=!1){return this.id===-1?!1:Pa(t.id,this.id,i)}static isPlayerInAny(t,i=!1){return Sa(t.id,i)}isAnyPlayerIn(t=!1){return this.id===-1?!1:ya(this.id,t)}static isAnyPlayerInAny(t=!1){return Ia(t)}static getPlayerAreas(t){return O.getPlayerAreasNumber(t)?Ea(t.id).areas.map(i=>ne.get(i)):[]}static getPlayerAreasNumber(t){return Ut(t.id)}isPointIn(t,i,a){return this.id===-1?!1:Aa(this.id,t,i,a)}static isPointInAny(t,i,a){return Ca(t,i,a)}isLineIn(t,i,a,n,r,s){return this.id===-1?!1:Na(this.id,t,i,a,n,r,s)}static isLineInAny(t,i,a,n,r,s){return Ta(t,i,a,n,r,s)}static getForPoint(t,i,a){return O.getNumberForPoint(t,i,a)?Da(t,i,a).areas.map(n=>O.getInstance(n)).filter(Boolean):[]}static getNumberForPoint(t,i,a){return Wt(t,i,a)}static getForLine(t,i,a,n,r,s){return O.getNumberForLine(t,i,a,n,r,s)?va(t,i,a,n,r,s).areas.map(l=>O.getInstance(l)).filter(Boolean):[]}static getNumberForLine(t,i,a,n,r,s){return jt(t,i,a,n,r,s)}attachToObject(t,i=0,a=0,n=0){if(this.id===-1||t.id===-1)throw new Error("[StreamerArea]: Unable to toggle attach to object before create");return wa(this.id,t.id,je.DYNAMIC,N.PLAYER_ID,i,a,n)}attachToPlayer(t,i=0,a=0,n=0){if(this.id===-1||t.id===-1)throw new Error("[StreamerArea]: Unable to toggle attach to player before create");return Ra(this.id,t.id,i,a,n)}attachToVehicle(t,i=0,a=0,n=0){if(this.id===-1||t.id===-1)throw new Error("[StreamerArea]: Unable to toggle attach to vehicle before create");return La(this.id,t.id,i,a,n)}toggleSpectateMode(t){if(this.id===-1)throw new Error("[StreamerArea]: Unable to toggle spectate mode before create");return ba(this.id,t)}isToggleSpectateMode(){return this.id===-1?!1:Oa(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerArea]: Unable to toggle callbacks before create");return P.toggleItemCallbacks(S.AREA,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:P.isToggleItemCallbacks(S.AREA,this.id)}static isValid=pa;static togglePlayerUpdate(t,i=!0){return P.toggleItemUpdate(t,S.AREA,i)}static hideForPlayer(t,i=-5e4){return P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?P.updateEx(t,a.x,a.y,a.z):P.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ne.get(t)}static getInstances(){return[...ne.values()]}}L.onExit(({next:e})=>(O.getInstances().forEach(t=>t.destroy()),ne.clear(),e()));const[Uf,Wf]=u({name:"OnDynamicAreaStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[jf,Kf]=u({name:"OnDynamicAreaStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});_e(({type:e,id:t,forPlayer:i,next:a})=>e===S.AREA?Wf(i,O.getInstance(t)):a()),he(({type:e,id:t,forPlayer:i,next:a})=>e===S.AREA?Kf(i,O.getInstance(t)):a());const[Zf]=u({name:"OnPlayerEnterDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:O.getInstance(t)}}}),[Xf]=u({name:"OnPlayerLeaveDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:O.getInstance(t)}}}),Yf=Object.freeze({onStreamIn:Uf,onStreamOut:jf,onPlayerEnter:Zf,onPlayerLeave:Xf});class v{_id=N.PLAYER_ID;_name="";get id(){return this._id}constructor(t){if(this._id=samp.callNative("NPC_Create","s",t),this._name=t,this._id!==N.PLAYER_ID){new m(this._id);const i=v.getInstance(this._id);if(i)return i}return Re.set(this._id,this),this}getName(){return this._name}destroy(){return A.skip||samp.callNative("NPC_Destroy","i",this._id),this}isValid(){return A.skip&&this._id!==-1?!0:v.isValid(this._id)}spawn(){return samp.callNative("NPC_Spawn","i",this._id),this}respawn(){return samp.callNative("NPC_Respawn","i",this._id),this}setPos(t,i,a){return samp.callNative("NPC_SetPos","ifff",this._id,t,i,a),this}setRot(t,i,a){return samp.callNative("NPC_SetRot","ifff",this._id,t,i,a),this}getRot(){const[t,i,a,n]=samp.callNative("NPC_GetRot","iFFF",this._id);return{rX:t,rY:i,rZ:a,ret:n}}setFacingAngle(t){return samp.callNative("NPC_SetFacingAngle","if",this._id,t),this}getFacingAngle(){const[t,i]=samp.callNative("NPC_GetFacingAngle","iF",this._id);return{angle:t,ret:i}}setVirtualWorld(t){return samp.callNative("NPC_SetVirtualWorld","ii",this._id,t),this}getVirtualWorld(){return samp.callNative("NPC_GetVirtualWorld","i",this._id)}move(t,i,a,n,r=pe.AUTO){return!!samp.callNative("NPC_Move","ifffif",this._id,t,i,a,n,r)}moveToPlayer(t,i,a=pe.AUTO){return!!samp.callNative("NPC_MoveToPlayer","iiif",this._id,t.id,i,a)}stopMove(){return samp.callNative("NPC_StopMove","i",this._id),this}isMoving(){return!!samp.callNative("NPC_IsMoving","i",this._id)}setSkin(t){return samp.callNative("NPC_SetSkin","ii",this._id,t),this}isStreamedIn(t){return!!samp.callNative("NPC_IsStreamedIn","ii",this._id,t.id)}isAnyStreamedIn(){return!!samp.callNative("NPC_IsAnyStreamedIn","i",this._id)}setInterior(t){return samp.callNative("NPC_SetInterior","ii",this._id,t),this}getInterior(){return samp.callNative("NPC_GetInterior","i",this._id)}setHealth(t){return samp.callNative("NPC_SetHealth","if",this._id,t),this}getHealth(){return samp.callNativeFloat("NPC_GetHealth","i",this._id)}setArmour(t){return samp.callNative("NPC_SetArmour","if",this._id,t),this}getArmour(){return samp.callNativeFloat("NPC_GetArmour","i",this._id)}isDead(){return!!samp.callNative("NPC_IsDead","i",this._id)}applyAnimation(t,i,a,n,r,s,l,o,d){return samp.callNative("NPC_ApplyAnimation","issfiiiiii",this._id,t,i,a,n,r,s,l,o,d),this}setWeapon(t){return samp.callNative("NPC_SetWeapon","ii",this._id,t),this}getWeapon(){return samp.callNative("NPC_GetWeapon","i",this._id)}setAmmo(t){return samp.callNative("NPC_SetAmmo","ii",this._id,t),this}getAmmo(){return samp.callNative("NPC_GetAmmo","i",this._id)}setKeys(t,i,a){return samp.callNative("NPC_SetKeys","iiii",this._id,t,i,a),this}getKeys(){const[t,i,a,n]=samp.callNative("NPC_GetKeys","iIII",this._id);return{upAndDown:t,leftAndDown:i,keys:a,ret:n}}setWeaponSkillLevel(t,i){return samp.callNative("NPC_SetWeaponSkillLevel","iii",this._id,t,i),this}getWeaponSkillLevel(t){return samp.callNative("NPC_GetWeaponSkillLevel","ii",this._id,t)}meleeAttack(t,i){return samp.callNative("NPC_MeleeAttack","iii",this._id,t,i),this}stopMeleeAttack(){return samp.callNative("NPC_StopMeleeAttack","i",this._id),this}isMeleeAttacking(){return!!samp.callNative("NPC_IsMeleeAttacking","i",this._id)}setFightingStyle(t){return samp.callNative("NPC_SetFightingStyle","ii",this._id,t),this}getFightingStyle(){return samp.callNative("NPC_GetFightingStyle","i",this._id)}enableReloading(t){return samp.callNative("NPC_EnableReloading","ii",this._id,t),this}isReloadEnabled(){return!!samp.callNative("NPC_IsReloadEnabled","i",this._id)}isReloading(){return!!samp.callNative("NPC_IsReloading","i",this._id)}enableInfiniteAmmo(t){return samp.callNative("NPC_EnableInfiniteAmmo","ii",this._id,t),this}isInfiniteAmmoEnabled(){return!!samp.callNative("NPC_IsInfiniteAmmoEnabled","i",this._id)}getWeaponState(){return samp.callNative("NPC_GetWeaponState","i",this._id)}setAmmoInClip(t){return samp.callNative("NPC_SetAmmoInClip","ii",this._id,t),this}getAmmoInClip(){return samp.callNative("NPC_GetAmmoInClip","i",this._id)}shoot(t,i,a,n,r,s,l,o,d,c,h=Ae.ALL){return samp.callNative("NPC_Shoot","iiiffffffii",this._id,t,i,a,n,r,s,l,o,d,c,h),this}isShooting(){return!!samp.callNative("NPC_IsShooting","i",this._id)}aimAt(t,i,a,n,r,s,l,o,d,c=Ae.ALL){return samp.callNative("NPC_AimAt","ifffiiifffi",this._id,t,i,a,n,r,s,l,o,d,c),this}aimAtPlayer(t,i,a,n,r,s,l,o,d,c,h=Ae.ALL){return samp.callNative("NPC_AimAtPlayer","iiiiiffffffi",this._id,t.id,i,a,n,r,s,l,o,d,c,h),this}stopAim(){return samp.callNative("NPC_StopAim","i",this._id),this}isAiming(){return!!samp.callNative("NPC_IsAiming","i",this._id)}isAimingAtPlayer(t){return!!samp.callNative("NPC_IsAimingAtPlayer","ii",this._id,t.id)}setWeaponAccuracy(t,i){return samp.callNative("NPC_SetWeaponAccuracy","iif",this._id,t,i),this}getWeaponAccuracy(t){return samp.callNativeFloat("NPC_GetWeaponAccuracy","ii",this._id,t)}setWeaponReloadTime(t,i){return samp.callNative("NPC_SetWeaponReloadTime","iii",this._id,t,i)}getWeaponReloadTime(t){return samp.callNative("NPC_GetWeaponReloadTime","ii",this._id,t)}getWeaponActualReloadTime(t){return samp.callNative("NPC_GetWeaponActualReloadTime","ii",this._id,t)}setWeaponShootTime(t,i){return samp.callNative("NPC_SetWeaponShootTime","iii",this._id,t,i)}getWeaponShootTime(t){return samp.callNative("NPC_GetWeaponShootTime","ii",this._id,t)}setWeaponClipSize(t,i){return samp.callNative("NPC_SetWeaponClipSize","iii",this._id,t,i)}getWeaponClipSize(t){return samp.callNative("NPC_GetWeaponClipSize","ii",this._id,t)}getWeaponActualClipSize(t){return samp.callNative("NPC_GetWeaponActualClipSize","ii",this._id,t)}enterVehicle(t,i,a){return samp.callNative("NPC_EnterVehicle","iiii",this._id,t.id,i,a),this}exitVehicle(){return samp.callNative("NPC_ExitVehicle","i",this._id),this}putInVehicle(t,i){return samp.callNative("NPC_PutInVehicle","iii",this._id,t.id,i)}removeFromVehicle(){return samp.callNative("NPC_RemoveFromVehicle","i",this._id)}getVehicle(){return C.getInstance(this.getVehicleID())}getVehicleID(){return samp.callNative("NPC_GetVehicle","i",this._id)}getVehicleSeat(){return samp.callNative("NPC_GetVehicleSeat","i",this._id)}getEnteringVehicle(){return C.getInstance(this.getEnteringVehicleId())}getEnteringVehicleId(){return samp.callNative("NPC_GetEnteringVehicle","i",this._id)}getEnteringVehicleSeat(){return samp.callNative("NPC_GetEnteringVehicleSeat","i",this._id)}isEnteringVehicle(){return!!samp.callNative("NPC_IsEnteringVehicle","i",this._id)}useVehicleSiren(t=!0){return samp.callNative("NPC_UseVehicleSiren","ii",this._id,t)}isVehicleSirenUsed(){return!!samp.callNative("NPC_IsVehicleSirenUsed","i",this._id)}setVehicleHealth(t){return samp.callNative("NPC_SetVehicleHealth","if",this._id,t)}getVehicleHealth(){return samp.callNativeFloat("NPC_GetVehicleHealth","i",this._id)}setVehicleHydraThrusters(t){return samp.callNative("NPC_SetVehicleHydraThrusters","ii",this._id,t)}getVehicleHydraThrusters(){return samp.callNative("NPC_GetVehicleHydraThrusters","i",this._id)}setVehicleGearState(t){return samp.callNative("NPC_SetVehicleGearState","ii",this._id,t)}getVehicleGearState(){return samp.callNative("NPC_GetVehicleGearState","i",this._id)}setVehicleTrainSpeed(t){return samp.callNative("NPC_SetVehicleTrainSpeed","if",this._id,t)}getVehicleTrainSpeed(){return samp.callNativeFloat("NPC_GetVehicleTrainSpeed","i",this._id)}resetAnimation(){return samp.callNative("NPC_ResetAnimation","i",this._id)}setAnimation(t,i,a,n,r,s,l){return samp.callNative("NPC_SetAnimation","iifiiiii",this._id,t,i,a,n,r,s,l)}getAnimation(){const[t,i,a,n,r,s,l,o]=samp.callNative("NPC_GetAnimation","iIFIIIII",this._id);return{animationId:t,delta:i,loop:!!a,lockX:!!n,lockY:!!r,freeze:!!s,time:l,ret:o}}clearAnimations(){return samp.callNative("NPC_ClearAnimations","i",this._id)}setSpecialAction(t){return samp.callNative("NPC_SetSpecialAction","ii",this._id,t)}getSpecialAction(){return samp.callNative("NPC_SetSpecialAction","i",this._id)}startPlayback(t,i,a,n,r,s,l,o){return samp.callNative("NPC_StartPlayback","isiffffff",this._id,t,i,a,n,r,s,l,o)}startPlaybackEx(t,i,a,n,r,s,l,o){return samp.callNative("NPC_StartPlaybackEx","iiiffffff",this._id,t.id,i,a,n,r,s,l,o)}stopPlayback(){return samp.callNative("NPC_StopPlayback","i",this._id)}pausePlayback(t){return samp.callNative("NPC_PausePlayback","ii",this._id,t)}isPlayingPlayback(){return!!samp.callNative("NPC_IsPlayingPlayback","i",this._id)}isPlaybackPaused(){return!!samp.callNative("NPC_IsPlaybackPaused","i",this._id)}playNode(t,i=He.JOG,a=pe.AUTO,n=0,r=!0){return!!samp.callNative("NPC_PlayNode","iiiffi",this._id,t.id,i,a,n,r)}stopPlayingNode(){return!!samp.callNative("NPC_StopPlayingNode","i",this._id)}pausePlayingNode(){return!!samp.callNative("NPC_PausePlayingNode","i",this._id)}resumePlayingNode(){return!!samp.callNative("NPC_ResumePlayingNode","i",this._id)}isPlayingNodePaused(){return!!samp.callNative("NPC_IsPlayingNodePaused","i",this._id)}isPlayingNode(){return!!samp.callNative("NPC_IsPlayingNode","i",this._id)}changeNode(t,i){return samp.callNative("NPC_ChangeNode","iii",this._id,t.id,i)}updateNodePoint(t){return!!samp.callNative("NPC_UpdateNodePoint","ii",this._id,t)}setInvulnerable(t){return samp.callNative("NPC_SetInvulnerable","ii",this._id,t)}isInvulnerable(){return!!samp.callNative("NPC_IsInvulnerable","i",this._id)}setSurfingOffsets(t,i,a){return samp.callNative("NPC_SetSurfingOffsets","ifff",this._id,t,i,a)}getSurfingOffsets(){const[t,i,a,n]=samp.callNative("NPC_GetSurfingOffsets","iFFF",this._id);return{x:t,y:i,z:a,ret:n}}setSurfingVehicle(t){return samp.callNative("NPC_SetSurfingVehicle","ii",this._id,t.id)}getSurfingVehicle(){return C.getInstance(this.getSurfingVehicleId())}getSurfingVehicleId(){return samp.callNative("NPC_GetSurfingVehicle","i",this._id)}setSurfingPlayerObject(t){return samp.callNative("NPC_SetSurfingPlayerObject","ii",this._id,t)}getSurfingPlayerObject(){return samp.callNative("NPC_GetSurfingPlayerObject","i",this._id)}resetSurfingData(){return samp.callNative("NPC_ResetSurfingData","i",this._id)}setSurfingDynamicObject(t){return this.setSurfingPlayerObject(P.getItemInternalID(new m(this._id),S.OBJECT,t.id))}getSurfingDynamicObject(){return k.getInstance(this.getSurfingDynamicObjectId())}getSurfingDynamicObjectId(){return P.getItemStreamerID(new m(this._id),S.OBJECT,this.getSurfingPlayerObject())}static startRecordingPlayerData(t,i,a){if(t.isRecording)throw new Error("[NpcFunc]: It should be stopped before recording");yd(t.id,i,a),t.isRecording=!0}static stopRecordingPlayerData(t){if(!t.isRecording)throw new Error("[NpcFunc]: It should be started before stop");Id(t.id),t.isRecording=!1}static isValid(t){return!!samp.callNative("NPC_IsValid","i",t)}static getInstance(t){return Re.get(t)}static getInstances(){return[...Re.values()]}}class xe{_filePath="";_id=-1;get id(){return this._id}get filePath(){return this._filePath}constructor(t){if(typeof t=="string"?(this._filePath=t,this._id=samp.callNative("NPC_LoadRecord","s",this._filePath)):this._id=t,ae.has(this._id))return ae.get(this._id)}unload(){const t=this._id,i=!!samp.callNative("NPC_UnloadRecord","i",this._id);return i&&(this._id=-1,this._filePath="",ae.delete(t)),i}isValid(){return xe.isValid(this._id)}static isValid(t){return!!samp.callNative("NPC_IsValidRecord","i",t)}static getCount(){return samp.callNative("NPC_GetRecordCount","")}static unloadAll(){const t=!!samp.callNative("NPC_UnloadAllRecords","");return t&&ae.clear(),t}static getInstance(t){return ae.get(t)}static getInstances(){return[...ae.values()]}}class Be{_id=-1;get id(){return this._id}constructor(t){if(this._id=t,Z.has(this._id))return Z.get(this._id);Z.set(this._id,this)}open(){samp.callNative("NPC_OpenNode","i",this._id)&&!Z.has(this._id)&&Z.set(this._id,this)}close(){const t=!!samp.callNative("NPC_CloseNode","i",this._id);return t&&Z.delete(this._id),t}isOpen(){return!!samp.callNative("NPC_IsNodeOpen","i",this._id)}getType(){return samp.callNative("NPC_GetNodeType","i",this._id)}setPoint(t){return!!samp.callNative("NPC_SetNodePoint","ii",this._id,t)}getPointPosition(){const[t,i,a,n]=samp.callNative("NPC_GetNodePointPosition","iFFF",this._id);return{x:t,y:i,z:a,ret:!!n}}getPointCount(){return samp.callNative("NPC_GetNodePointCount","i",this._id)}getInfo(){const[t,i,a,n]=samp.callNative("NPC_GetNodeInfo","iIII",this._id);return{vehNodes:t,pedNodes:i,naviNode:a,ret:!!n}}static getInstance(t){return Z.get(t)}static getInstances(){return[...Z.values()]}}class ke{_id=-1;get id(){return this._id}constructor(t){if(typeof t<"u"){if(ie.has(t))return ie.get(t);this._id=t}else this._id=samp.callNative("NPC_CreatePath","")}destroy(){const t=!!samp.callNative("NPC_DestroyPath","i",this._id);return t&&(this._id=-1,ie.delete(this._id)),t}addPoint(t,i,a,n){return!!samp.callNative("NPC_AddPointToPath","iffff",this._id,t,i,a,n)}removePoint(t){return!!samp.callNative("NPC_RemovePointFromPath","ii",this._id,t)}clear(){return!!samp.callNative("NPC_ClearPath","i",this._id)}getPointCount(){return samp.callNative("NPC_GetPathPointCount","i",this._id)}getPoint(t){const[i,a,n,r,s]=samp.callNative("NPC_GetPathPoint","ii",this._id,t);return{x:i,y:a,z:n,stopRange:r,ret:s}}isValid(){return ke.isValid(this._id)}getCurrentPointIndex(){return samp.callNative("NPC_GetCurrentPathPointIndex","i",this._id)}move(t=He.JOG,i=pe.AUTO,a=!1){return!!samp.callNative("NPC_MoveByPath","iiifi",this._id,this._id,t,i,a)}hasPointInRadius(t,i,a,n){return!!samp.callNative("NPC_HasPathPointInRange","iiffff",this._id,this._id,t,i,a,n)}static destroyAll(){const t=!!samp.callNative("NPC_DestroyAllPath","");return t&&ie.clear(),t}static getCount(){return samp.callNative("NPC_GetPathCount","")}static isValid(t){return!!samp.callNative("NPC_IsValidPath","i",t)}static getInstance(t){return ie.get(t)}static getInstances(){return[...ie.values()]}}L.onExit(({next:e})=>(Re.clear(),Z.clear(),ie.clear(),ae.clear(),e()));const[zf]=u({name:"OnClientMessageI18n",identifier:"iai",beforeEach(e,t){return{color:e,buffer:t,string:I.decodeFromBuf(t)}}}),[$f]=u({name:"OnNPCFinishMove",identifier:"i",beforeEach(e){return{npc:v.getInstance(e)}}}),[Jf]=u({name:"OnNPCCreate",identifier:"i",beforeEach(e){return{npc:v.getInstance(e)}}}),[Qf]=u({name:"OnNPCDestroy",identifier:"i",beforeEach(e){return{npc:v.getInstance(e)}},afterEach({npc:e}){Re.delete(e.id)}}),[qf]=u({name:"OnNPCWeaponStateChange",identifier:"iii",beforeEach(e,t,i){return{npc:v.getInstance(e),newState:t,oldState:i}}}),[eg]=u({name:"OnNPCTakeDamage",identifier:"iiiii",beforeEach(e,t,i,a,n){return{npc:v.getInstance(e),damager:m.getInstance(t),damage:i,weapon:a,bodyPart:n}}}),[tg]=u({name:"OnNPCGiveDamage",identifier:"iiiii",beforeEach(e,t,i,a,n){return{npc:v.getInstance(e),damager:m.getInstance(t),damage:i,weapon:a,bodyPart:n}}}),[ig]=u({name:"OnNPCDeath",identifier:"iii",beforeEach(e,t,i){const a=m.getInstance(t)||N.PLAYER_ID;return{npc:v.getInstance(e),killer:a,reason:i}}}),[ag]=u({name:"OnNpcSpawn",identifier:"i",beforeEach(e){return{npc:v.getInstance(e)}}}),[ng]=u({name:"OnNpcRespawn",identifier:"i",beforeEach(e){return{npc:v.getInstance(e)}}}),[rg]=u({name:"OnNPCPlaybackStart",identifier:"ii",beforeEach(e,t){return{npc:v.getInstance(e),record:xe.getInstance(t),recordId:t}}}),[sg]=u({name:"OnNPCPlaybackEnd",identifier:"ii",beforeEach(e,t){return{npc:v.getInstance(e),record:xe.getInstance(t),recordId:t}}}),[lg]=u({name:"OnNPCWeaponShot",identifier:"iiiifff",beforeEach(e,t,i,a,n,r,s){return{npc:v.getInstance(e),weapon:t,hitType:i,hitId:a,fX:n,fY:r,fZ:s}}}),[og]=u({name:"OnNPCFinishNodePoint",identifier:"iii",beforeEach(e,t,i){return{npc:v.getInstance(e),node:Be.getInstance(t),nodeId:t,pointId:i}}}),[dg]=u({name:"OnNPCFinishNode",identifier:"ii",beforeEach(e,t){return{npc:v.getInstance(e),node:Be.getInstance(t),nodeId:t}}}),[cg]=u({name:"OnNPCChangeNode",identifier:"iii",beforeEach(e,t,i){return{npc:v.getInstance(e),newNode:Be.getInstance(t),oldNode:Be.getInstance(i),newNodeId:t,oldNodeId:i}}}),[_g]=u({name:"OnNPCFinishMovePath",identifier:"ii",beforeEach(e,t){return{npc:v.getInstance(e),path:ke.getInstance(t),pathId:t}}}),[hg]=u({name:"OnNPCFinishMovePathPoint",identifier:"iii",beforeEach(e,t,i){return{npc:v.getInstance(e),path:ke.getInstance(t),pathId:t,pointIndex:i}}}),ug=Object.freeze({onClientMessage:zf,onFinishMove:$f,onCreate:Jf,onDestroy:Qf,onSpawn:ag,onRespawn:ng,onWeaponStateChange:qf,onTakeDamage:eg,onGiveDamage:tg,onDeath:ig,onPlaybackStart:rg,onPlaybackEnd:sg,onWeaponShot:lg,onFinishNodePoint:og,onFinishNode:dg,onChangeNode:cg,onFinishMovePath:_g,onFinishMovePathPoint:hg});class mg{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getNetworkStats(){return dl()}static getPlayerNetworkStats(t){return ol(t.id)}static getBytesReceived(t){return Js(t.id)}static getBytesSent(t){return qs(t.id)}static getConnectionStatus(t){return il(t.id)}static getConnectedTime(t){return zs(t.id)}static getIpPort(t){return al(t.id)}static getMessagesReceived(t){return $s(t.id)}static getMessagesRecvPerSecond(t){return el(t.id)}static getMessagesSent(t){return Qs(t.id)}static getPacketLossPercent(t){return tl(t.id)}}class pg{_text;_time;_style;get text(){return this._text}set text(t){this._text=t}get time(){return this._time}set time(t){this._time=t}get style(){return this._style}set style(t){this._style=t}constructor(t,i,a){this._text=t,this._time=i,this._style=a}static hideForAll(t){us(t)}static has(t,i){return Zl(t.id,i)}forAll(t="win1252"){hs(I.encodeToBuf(I.convertSpecialChar(this.text),t),this.time,this.style)}forPlayer(t,i="win1252"){Kl(t.id,I.encodeToBuf(I.convertSpecialChar(this.text),i),this.time,this.style)}hideForPlayer(t){return Yl(t.id,this.style)}}class ye{_itemCount=0;get itemCount(){return this._itemCount}_id=-1;get id(){return this._id}_title;get title(){return this._title}set title(t){this._title=t}_columns=1;get columns(){return this._columns}set columns(t){if(t!==1&&t!==2)throw new Error("[Menu]: The menu column number interval is between 1 and 2");this._columns=t}_x;get x(){return this._x}set x(t){this._x=t}_y;get y(){return this._y}set y(t){this._y=t}_col1width;get col1width(){return this._col1width}set col1width(t){this._col1width=t}_col2width;get col2width(){return this._col2width}set col2width(t){this._col2width=t}constructor(t,i,a,n,r,s){this._title=t,this.columns=i,this._x=a,this._y=n,this._col1width=r,this._col2width=s}create(){if(this._id!==-1)throw new Error("[Menu]: Cannot be created twice");if(ye.getInstances().length===F.MAX_MENUS)throw new Error("[Menu]: The maximum number of menus allowed to be created has been reached 128");return this._id=U_(this.title,this.columns,this.x,this.y,this.col1width,this.col2width),we.set(this._id,this),this}destroy(){if(this._id===-1)throw new Error("[Menu]: Cannot destroy before create");return A.skip||W_(this.id),we.delete(this._id),this._id=-1,this}addItem(t,i){if(this._id===-1)throw new Error("[Menu]: Cannot addItem before create");if(this._itemCount===F.MAX_MENU_ROW)throw new Error("[Menu]: The maximum number of items allowed to be added has been reached 12");if(t!==0&&t!==1)throw new Error("[Menu]: Wrong number of columns");return j_(this.id,t,i),this._itemCount++,this}setColumnHeader(t,i){if(this._id===-1)throw new Error("[Menu]: Cannot setColumnHeader before create");if(t!==0&&t!==1)throw new Error("[Menu]: Wrong number of columns");return K_(this.id,t,i),this}disable(){if(this._id===-1)throw new Error("[Menu]: Cannot disable menu before create");return z_(this.id),this}disableRow(t){if(this._id===-1)throw new Error("[Menu]: Cannot disable row before create");if(t<0||t>this.itemCount-1)throw new Error("[Menu]: Wrong number of rows");$_(this.id,t)}isValid(){return A.skip&&this.id!==-1?!0:ye.isValid(this.id)}showForPlayer(t){if(this._id===-1)throw new Error("[Menu]: Cannot show menu before create");return Z_(this.id,t.id)}hideForPlayer(t){if(this._id===-1)throw new Error("[Menu]: Cannot hide menu before create");return X_(this.id,t.id)}isDisabled(){return this._id===-1?!1:F_(this.id)}isRowDisabled(t){return this._id===-1||t<0||t>this._itemCount?!1:B_(this.id,t)}getItems(t){return this._id===-1?0:x_(this.id,t)}getPos(){return this._id===-1?{fX:this.x,fY:this.y}:k_(this.id)}getColumnWidth(){return this.id===-1?{fColumn1:this.col1width,fColumn2:this.col2width}:M_(this.id)}getColumnHeader(t){if(this._id===-1)throw new Error("[Menu]: Cannot get column header before create");return V_(this.id,t)}getItem(t,i){if(this._id===-1)throw new Error("[Menu]: Cannot get item before create");if(i<0||i>this.getItems(t)-1)throw new Error("[Menu]: invalid getItem range");return H_(this.id,t,i)}static isValid=Y_;static getInstance(t){return we.get(t)}static getInstances(){return[...we.values()]}static getInstanceByPlayer(t){return this.getInstances().find(i=>i.id===J_(t.id))}}L.onExit(({next:e})=>(ye.getInstances().forEach(t=>t.destroy()),we.clear(),e()));const[fg]=u({name:"OnPlayerExitedMenu",identifier:"i",beforeEach(e){return{player:m.getInstance(e)}}}),[gg]=u({name:"OnPlayerSelectedMenuRow",identifier:"ii",beforeEach(e,t){const i=m.getInstance(e),a=ye.getInstanceByPlayer(i);return{player:i,menu:a,row:t}}}),Pg=Object.freeze({onPlayerExited:fg,onPlayerSelectedRow:gg});class b{sourceInfo;constructor(t){this.sourceInfo=t}_id=-1;get id(){return this._id}create(){if(this.id!==-1)throw new Error("[GangZone]: Unable to create again");const{player:t}=this.sourceInfo;if(t){if(b.getInstances(!1).length===F.MAX_GANG_ZONES)throw new Error("[GangZone]: Unable to continue to create gangzone, maximum allowable quantity has been reached");const{minX:i,minY:a,maxX:n,maxY:r}=this.sourceInfo;this._id=fh(t.id,i,a,n,r);const s=at.onDisconnect(({player:l,next:o})=>{o(),l===this.sourceInfo.player&&(this.isValid()&&this.destroy(),s())});ve.set(this.id,this)}else{if(b.getInstances(!0).length===F.MAX_GANG_ZONES)throw new Error("[GangZone]: Unable to continue to create gangzone, maximum allowable quantity has been reached");const{minX:i,minY:a,maxX:n,maxY:r}=this.sourceInfo;this._id=sh(i,a,n,r),De.set(this.id,this)}}destroy(){if(this.id===-1)throw new Error("[GangZone]: Unable to destroy the gangzone before create");const{player:t}=this.sourceInfo;t?(A.skip||gh(t.id,this.id),ve.delete(this.id)):(A.skip||lh(this.id),De.delete(this.id)),this._id=-1}showForAll(t){if(this.id===-1)throw new Error("[GangZone]: Unable to show the gangzone before create");if(!this.sourceInfo.player)return dh(this.id,t),this;throw new Error("[GangZone]: player's gangzone should not be show for all.")}showForPlayer(t,i){if(this.id===-1)throw new Error("[GangZone]: Unable to show the gangzone before create");const a=this.sourceInfo.player;if(a)Ph(a.id,this.id,E(t));else if(i)oh(i.id,this.id,t);else throw new Error("[GangZone]: invalid player for show");return this}hideForAll(){if(this.id===-1)throw new Error("[GangZone]: Unable to hide the gangzone before create");if(!this.sourceInfo.player)return _h(this.id),this;throw new Error("[GangZone]: player's gangzone should not be hide for all.")}hideForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to hide the gangzone before create");const i=this.sourceInfo.player;if(i)Sh(i.id,this.id);else if(t)ch(t.id,this.id);else throw new Error("[GangZone]: invalid player for hide");return this}flashForAll(t){if(this.id===-1)throw new Error("[GangZone]: Unable to flash the gangzone before create");if(!this.sourceInfo.player)return uh(this.id,t),this;throw new Error("[GangZone]: player's gangzone should not be flash for all.")}flashForPlayer(t,i){if(this.id===-1)throw new Error("[GangZone]: Unable to flash the gangzone before create");const a=this.sourceInfo.player;if(a)yh(a.id,this.id,E(i));else if(t)hh(t.id,this.id,i);else throw new Error("[GangZone]: invalid player for flash");return this}stopFlashForAll(){if(this.id===-1)throw new Error("[GangZone]: Unable to stop flash the gangzone before create");if(!this.sourceInfo.player)return ph(this.id),this;throw new Error("[GangZone]: player's gangzone should not be stop flash for all.")}stopFlashForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to stop flash the gangzone before create");const i=this.sourceInfo.player;if(i)Ih(i.id,this.id);else if(t)mh(t.id,this.id);else throw new Error("[GangZone]: invalid player for flash");return this}isValid(){if(A.skip&&this.id!==-1)return!0;if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?b.isValidPlayer(t.id,this.id):b.isValidGlobal(this.id)}isPlayerIn(t){if(this.id===-1)return!1;const i=this.sourceInfo.player;return i?Ah(i.id,this.id):q_(t.id,this.id)}isVisibleForPlayer(t){if(this.id===-1)return!1;const i=this.sourceInfo.player;return i?Ch(i.id,this.id):eh(t.id,this.id)}getColorForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to get color before create");const i=this.sourceInfo.player;return i?Nh(i.id,this.id):th(t.id,this.id)}getFlashColorForPlayer(t){if(this.id===-1)throw new Error("[GangZone]: Unable to get flash color before create");const i=this.sourceInfo.player;return i?Th(i.id,this.id):ih(t.id,this.id)}isFlashingForPlayer(t){if(this.id===-1)return!1;const i=this.sourceInfo.player;return i?Dh(i.id,this.id):ah(t.id,this.id)}getPos(){if(this.id===-1)throw new Error("[GangZone]: Unable to get position before create");const t=this.sourceInfo.player;return t?vh(t.id,this.id):nh(this.id)}useCheck(t){if(this.id===-1)throw new Error("[GangZone]: Unable to use check before create");const i=this.sourceInfo.player;return i?wh(i.id,this.id,t):rh(this.id,t),this}static isValidPlayer=Eh;static isValidGlobal=Q_;static getInstance(t,i){return i?De.get(t):ve.get(t)}static getInstances(t){return t?[...De.values()]:[...ve.values()]}}L.onExit(({next:e})=>(b.getInstances(!0).forEach(t=>t.destroy()),b.getInstances(!1).forEach(t=>t.destroy()),De.clear(),ve.clear(),e()));const[Sg]=u({name:"OnPlayerEnterGangZone",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[yg]=u({name:"OnPlayerLeaveGangZone",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[Ig]=u({name:"OnPlayerEnterPlayerGangZone",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[Eg]=u({name:"OnPlayerLeavePlayerGangZone",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[Ag]=u({name:"OnPlayerClickGangZone",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[Cg]=u({name:"OnPlayerClickPlayerGangZone",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),Ng=Object.freeze({onPlayerEnterGlobal:Sg,onPlayerLeaveGlobal:yg,onPlayerEnterPlayer:Ig,onPlayerLeavePlayer:Eg,onPlayerClickGlobal:Ag,onPlayerClickPlayer:Cg});class _{sourceInfo;_id=-1;get id(){return this._id}constructor(t){this.sourceInfo=t}create(){if(this.id!==-1)throw new Error("[TextDraw]: Unable to create again");const{x:t,y:i,text:a,player:n,charset:r="iso-8859-1"}=this.sourceInfo,s=I.encodeToBuf(I.convertSpecialChar(a),r);if(n){if(_.getInstances(!1).length===F.MAX_TEXT_DRAWS)throw new Error("[TextDraw]: Unable to continue to create textdraw, maximum allowable quantity has been reached");this._id=_.__inject__CreatePlayerTextDraw(n.id,t,i,s);const l=at.onDisconnect(({player:o,next:d})=>{const c=d();return o===n&&(this.isValid()&&this.destroy(),l()),c});be.set(this.id,this)}else{if(_.getInstances(!0).length===F.MAX_TEXT_DRAWS)throw new Error("[TextDraw]: Unable to continue to create textdraw, maximum allowable quantity has been reached");this._id=_.__inject__TextDrawCreate(t,i,s),Le.set(this.id,this)}return this}destroy(){this.id===-1&&_.beforeCreateWarn("destroy the textdraw");const{player:t}=this.sourceInfo;return t?(A.skip||_.__inject__PlayerTextDrawDestroy(t.id,this.id),be.delete(this.id)):(A.skip||_.__inject__TextDrawDestroy(this.id),Le.delete(this.id)),this._id=-1,this}setFont(t){if(this.id===-1)return _.beforeCreateWarn("set font"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawFont(i.id,this.id,t):_.__inject__TextDrawFont(this.id,t),this}setColor(t){if(this.id===-1)return _.beforeCreateWarn("set color"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawColor(i.id,this.id,t):_.__inject__TextDrawColor(this.id,t),this}setBoxColors(t){if(this.id===-1)return _.beforeCreateWarn("set box color"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawBoxColor(i.id,this.id,t):_.__inject__TextDrawBoxColor(this.id,t),this}setBackgroundColors(t){if(this.id===-1)return _.beforeCreateWarn("set background color"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawBackgroundColor(i.id,this.id,t):_.__inject__TextDrawBackgroundColor(this.id,t),this}setAlignment(t){if(this.id===-1)return _.beforeCreateWarn("set alignment"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawAlignment(i.id,this.id,t):_.__inject__TextDrawAlignment(this.id,t),this}setLetterSize(t,i){if(this.id===-1)return _.beforeCreateWarn("set letter size"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawLetterSize(a.id,this.id,t,i):_.__inject__TextDrawLetterSize(this.id,t,i),this}setOutline(t){if(this.id===-1)return _.beforeCreateWarn("set outline model"),this;if(t<0)throw new Error("[TextDraw]: Invalid outline value");const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawSetOutline(i.id,this.id,t):_.__inject__TextDrawSetOutline(this.id,t),this}setPreviewModel(t){if(this.id===-1)return _.beforeCreateWarn("set preview model"),this;this.setFont(Te.MODEL_PREVIEW);const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawSetPreviewModel(i.id,this.id,t):_.__inject__TextDrawSetPreviewModel(this.id,t),this}setPreviewRot(t,i,a,n=1){if(this.id===-1)return _.beforeCreateWarn("set preview rot"),this;this.setFont(Te.MODEL_PREVIEW);const{player:r}=this.sourceInfo;return r?_.__inject__PlayerTextDrawSetPreviewRot(r.id,this.id,t,i,a,n):_.__inject__TextDrawSetPreviewRot(this.id,t,i,a,n),this}setPreviewVehColors(t,i){if(this.id===-1)return _.beforeCreateWarn("set preview veh col"),this;this.setFont(Te.MODEL_PREVIEW);const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawSetPreviewVehicleColors(a.id,this.id,t,i):_.__inject__TextDrawSetPreviewVehicleColors(this.id,t,i),this}setProportional(t=!0){if(this.id===-1)return _.beforeCreateWarn("set Proportional"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawSetProportional(i.id,this.id,t):_.__inject__TextDrawSetProportional(this.id,t),this}setSelectable(t){if(this.id===-1)return _.beforeCreateWarn("set Selectable"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawSetSelectable(i.id,this.id,t):_.__inject__TextDrawSetSelectable(this.id,t),this}setShadow(t){if(this.id===-1)return _.beforeCreateWarn("set shadow"),this;if(t<0)throw new Error("[TextDraw]: Invalid shadow value");const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawSetShadow(i.id,this.id,t):_.__inject__TextDrawSetShadow(this.id,t),this}setString(t,i){if(this.id===-1)return _.beforeCreateWarn("set string"),this;if(t.length===0||t.length>1024)throw new Error("[TextDraw]: Invalid text length");const{player:a,charset:n="iso-8859-1"}=this.sourceInfo,r=I.encodeToBuf(I.convertSpecialChar(t),n);return a?_.__inject__PlayerTextDrawSetString(a.id,this.id,r):i?_.__inject__TextDrawSetStringForPlayer(this.id,i.id,r):_.__inject__TextDrawSetString(this.id,r),this}setTextSize(t,i){if(this.id===-1)return _.beforeCreateWarn("set TextSize"),this;const{player:a}=this.sourceInfo;return a?_.__inject__PlayerTextDrawTextSize(a.id,this.id,t,i):_.__inject__TextDrawTextSize(this.id,t,i),this}useBox(t){if(this.id===-1)return _.beforeCreateWarn("set TextSize"),this;const{player:i}=this.sourceInfo;return i?_.__inject__PlayerTextDrawUseBox(i.id,this.id,t):_.__inject__TextDrawUseBox(this.id,t),this}static beforeCreateWarn(t){throw new Error(`[TextDraw]: Unable to ${t} before create`)}show(t){if(this.id===-1)return _.beforeCreateWarn("show"),this;const i=this.sourceInfo.player;if(i)_.__inject__PlayerTextDrawShow(i.id,this.id);else if(t)_.__inject__TextDrawShowForPlayer(t.id,this.id);else throw new Error("[TextDraw]: invalid player for show");return this}hide(t){if(this.id===-1)return _.beforeCreateWarn("hide"),this;const i=this.sourceInfo.player;if(i)_.__inject__PlayerTextDrawHide(i.id,this.id);else if(t)_.__inject__TextDrawHideForPlayer(t.id,this.id);else throw new Error("[TextDraw]: invalid player for hide");return this}showAll(){if(this.id===-1)return _.beforeCreateWarn("show"),this;if(!this.sourceInfo.player)return _.__inject__TextDrawShowForAll(this.id),this;throw new Error("[TextDraw]: player's textdraw should not be show for all.")}hideAll(){if(this.id===-1)return _.beforeCreateWarn("hideAll"),this;if(!this.sourceInfo.player)return _.__inject__TextDrawHideForAll(this.id),this;throw new Error("[TextDraw]: player's textdraw should not be hide for all.")}isValid(){if(A.skip&&this.id!==-1)return!0;const t=this.sourceInfo.player;return t?_.__inject__IsValidPlayerTextDraw(t.id,this.id):_.__inject__IsValidTextDraw(this.id)}isVisibleForPlayer(t){if(this.id===-1)return!1;const{player:i}=this.sourceInfo;return i?_.__inject__IsPlayerTextDrawVisible(i.id,this.id):t?_.__inject__IsTextDrawVisibleForPlayer(t.id,this.id):!1}getString(){if(this.id===-1)return this.sourceInfo.text;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetString(t.id,this.id).str:_.__inject__TextDrawGetString(this.id).str}setPos(t,i){if(this.id===-1)return _.beforeCreateWarn("set position"),this;const a=this.sourceInfo.player;return a?_.__inject__PlayerTextDrawSetPos(a.id,this.id,t,i):_.__inject__TextDrawSetPos(this.id,t,i),this}getLetterSize(){if(this.id===-1)return _.beforeCreateWarn("get letter size");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetLetterSize(t.id,this.id):_.__inject__TextDrawGetLetterSize(this.id)}getTextSize(){if(this.id===-1)return _.beforeCreateWarn("get text size");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetTextSize(t.id,this.id):_.__inject__TextDrawGetTextSize(this.id)}getPos(){if(this.id===-1)return _.beforeCreateWarn("get position");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPos(t.id,this.id):_.__inject__TextDrawGetPos(this.id)}getColor(){if(this.id===-1)return _.beforeCreateWarn("get color");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetColor(t.id,this.id):_.__inject__TextDrawGetColor(this.id)}getBoxColor(){if(this.id===-1)return _.beforeCreateWarn("get box color");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetBoxColor(t.id,this.id):_.__inject__TextDrawGetBoxColor(this.id)}getBackgroundColor(){if(this.id===-1)return _.beforeCreateWarn("get bg color");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetBackgroundColor(t.id,this.id):_.__inject__TextDrawGetBackgroundColor(this.id)}getShadow(){if(this.id===-1)return _.beforeCreateWarn("get shadow");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetShadow(t.id,this.id):_.__inject__TextDrawGetShadow(this.id)}getOutline(){if(this.id===-1)return _.beforeCreateWarn("get outline");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetOutline(t.id,this.id):_.__inject__TextDrawGetOutline(this.id)}getFont(){if(this.id===-1)return _.beforeCreateWarn("get font");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetFont(t.id,this.id):_.__inject__TextDrawGetFont(this.id)}isBox(){if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawIsBox(t.id,this.id):_.__inject__TextDrawIsBox(this.id)}isProportional(){if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawIsProportional(t.id,this.id):_.__inject__TextDrawIsProportional(this.id)}isSelectable(){if(this.id===-1)return!1;const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawIsSelectable(t.id,this.id):_.__inject__TextDrawIsSelectable(this.id)}getAlignment(){if(this.id===-1)return _.beforeCreateWarn("get alignment");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetAlignment(t.id,this.id):_.__inject__TextDrawGetAlignment(this.id)}getPreviewModel(){if(this.id===-1)return _.beforeCreateWarn("get preview model");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPreviewModel(t.id,this.id):_.__inject__TextDrawGetPreviewModel(this.id)}getPreviewRot(){if(this.id===-1)return _.beforeCreateWarn("get preview rotation");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPreviewRot(t.id,this.id):_.__inject__TextDrawGetPreviewRot(this.id)}getPreviewVehColors(){if(this.id===-1)return _.beforeCreateWarn("get preview vel colors");const t=this.sourceInfo.player;return t?_.__inject__PlayerTextDrawGetPreviewVehicleColors(t.id,this.id):_.__inject__TextDrawGetPreviewVehicleColors(this.id)}isGlobal(){return!!this.sourceInfo.player}static getInstance(t,i){return i?Le.get(t):be.get(t)}static getInstances(t){return t?[...Le.values()]:[...be.values()]}static __inject__TextDrawCreate=Jh;static __inject__CreatePlayerTextDraw=Hu;static __inject__TextDrawDestroy=Qh;static __inject__PlayerTextDrawDestroy=Uu;static __inject__TextDrawFont=ou;static __inject__PlayerTextDrawFont=Qu;static __inject__TextDrawColor=iu;static __inject__PlayerTextDrawColor=Zu;static __inject__TextDrawBoxColor=nu;static __inject__PlayerTextDrawBoxColor=Yu;static __inject__TextDrawBackgroundColor=lu;static __inject__PlayerTextDrawBackgroundColor=Ju;static __inject__TextDrawAlignment=tu;static __inject__PlayerTextDrawAlignment=Ku;static __inject__TextDrawLetterSize=qh;static __inject__PlayerTextDrawLetterSize=Wu;static __inject__TextDrawSetOutline=su;static __inject__PlayerTextDrawSetOutline=$u;static __inject__TextDrawSetPreviewModel=fu;static __inject__PlayerTextDrawSetPreviewModel=nm;static __inject__TextDrawSetPreviewRot=gu;static __inject__PlayerTextDrawSetPreviewRot=rm;static __inject__TextDrawSetPreviewVehicleColors=Pu;static __inject__PlayerTextDrawSetPreviewVehicleColors=sm;static __inject__TextDrawSetProportional=du;static __inject__PlayerTextDrawSetProportional=qu;static __inject__TextDrawSetSelectable=cu;static __inject__PlayerTextDrawSetSelectable=em;static __inject__TextDrawSetShadow=ru;static __inject__PlayerTextDrawSetShadow=zu;static __inject__PlayerTextDrawSetString=am;static __inject__TextDrawSetStringForPlayer=$h;static __inject__TextDrawSetString=pu;static __inject__TextDrawTextSize=eu;static __inject__PlayerTextDrawTextSize=ju;static __inject__PlayerTextDrawUseBox=Xu;static __inject__TextDrawUseBox=au;static __inject__PlayerTextDrawShow=tm;static __inject__TextDrawShowForPlayer=_u;static __inject__PlayerTextDrawHide=im;static __inject__TextDrawHideForPlayer=hu;static __inject__TextDrawShowForAll=uu;static __inject__TextDrawHideForAll=mu;static __inject__IsValidPlayerTextDraw=Iu;static __inject__IsValidTextDraw=Rh;static __inject__IsPlayerTextDrawVisible=Eu;static __inject__IsTextDrawVisibleForPlayer=Lh;static __inject__PlayerTextDrawGetString=Au;static __inject__TextDrawGetString=bh;static __inject__PlayerTextDrawSetPos=Cu;static __inject__TextDrawSetPos=Oh;static __inject__PlayerTextDrawGetLetterSize=Nu;static __inject__TextDrawGetLetterSize=Gh;static __inject__PlayerTextDrawGetTextSize=Tu;static __inject__TextDrawGetTextSize=Fh;static __inject__PlayerTextDrawGetPos=Du;static __inject__TextDrawGetPos=Bh;static __inject__PlayerTextDrawGetColor=vu;static __inject__TextDrawGetColor=xh;static __inject__PlayerTextDrawGetBoxColor=wu;static __inject__TextDrawGetBoxColor=kh;static __inject__PlayerTextDrawGetBackgroundColor=Ru;static __inject__TextDrawGetBackgroundColor=Mh;static __inject__PlayerTextDrawGetShadow=Lu;static __inject__TextDrawGetShadow=Vh;static __inject__PlayerTextDrawGetOutline=bu;static __inject__TextDrawGetOutline=Hh;static __inject__PlayerTextDrawGetFont=Ou;static __inject__TextDrawGetFont=Uh;static __inject__PlayerTextDrawIsBox=Gu;static __inject__TextDrawIsBox=Wh;static __inject__PlayerTextDrawIsProportional=Fu;static __inject__TextDrawIsProportional=jh;static __inject__PlayerTextDrawIsSelectable=Bu;static __inject__TextDrawIsSelectable=Kh;static __inject__PlayerTextDrawGetAlignment=xu;static __inject__TextDrawGetAlignment=Zh;static __inject__PlayerTextDrawGetPreviewModel=ku;static __inject__TextDrawGetPreviewModel=Xh;static __inject__PlayerTextDrawGetPreviewRot=Mu;static __inject__TextDrawGetPreviewRot=Yh;static __inject__TextDrawGetPreviewVehicleColors=zh;static __inject__PlayerTextDrawGetPreviewVehicleColors=Vu}L.onExit(({next:e})=>(_.getInstances(!0).forEach(t=>t.destroy()),_.getInstances(!1).forEach(t=>t.destroy()),Le.clear(),be.clear(),e()));const[Tg]=u({name:"OnPlayerClickTextDraw",identifier:"ii",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===N.TEXT_DRAW?t:_.getInstance(t,!0)}}}),[Dg]=u({name:"OnPlayerClickPlayerTextDraw",identifier:"ii",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===N.TEXT_DRAW?t:_.getInstance(t,!1)}}}),vg=Object.freeze({onPlayerClickGlobal:Tg,onPlayerClickPlayer:Dg});function wg(e,t){return(e&t)===t}function Rg(e,t,i){return(e&i)===i&&(t&i)!==i}function Lg(e,t){return!!(e&t)}function bg(e,t,i){return(e&i)!==i&&(t&i)===i}function Og(e){const t=new Set,i=e.prototype,a=Object.getOwnPropertyNames(i).filter(r=>typeof i[r]=="function"&&r!=="constructor").reduce((r,s)=>(r[s]=i[s],r),{});function n(r,s){if(t.has(r))throw new Error(`Method '${String(r)}' of class '${e.name}' has already been hooked. Each method can only be hooked once per defineHooks call. `);if(typeof Reflect.get(i,r)!="function")throw new Error(`Invalid method: ${String(r)}`);return Reflect.set(i,r,s),t.add(r),s}return[a,n]}export{_t as ArtworkEnum,Nt as BodyPartsEnum,Tt as BoneIdsEnum,Gt as BulletHitTypesEnum,Ce as CameraCutStylesEnum,Ct as CameraModesEnum,wt as CarModTypeEnum,ht as ClickSourcesEnum,mt as ConnectionStatusEnum,Je as DamageDeathReasonEnum,R as Dialog,ze as DialogStylesEnum,me as Dynamic3DTextLabel,Hf as Dynamic3DTextLabelEvent,q as DynamicActor,Bf as DynamicActorEvent,O as DynamicArea,Yf as DynamicAreaEvent,Nf as DynamicCheckPointEvent,z as DynamicCheckpoint,ue as DynamicMapIcon,hf as DynamicMapIconEvent,k as DynamicObject,lf as DynamicObjectEvent,V as DynamicPickup,Pf as DynamicPickupEvent,$ as DynamicRaceCP,bf as DynamicRaceCPEvent,W as E_STREAMER,ut as EditResponseTypesEnum,Et as FightingStylesEnum,Dt as ForceSyncEnum,L as GameMode,pg as GameText,b as GangZone,Ng as GangZoneEvent,I as I18n,N as InvalidEnum,pt as KeysEnum,F as LimitsEnum,Ze as MapIconStyles,At as MapIconStylesEnum,ft as MarkerModesEnum,kt as MaterialTextAlign,Qe as MaterialTextSizes,ye as Menu,Pg as MenuEvent,Ae as NPCEntityCheckEnum,pe as NPCMoveSpeedEnum,He as NPCMoveTypeEnum,gt as NPCPlaybackEnum,Pt as NPCRecordStatusEnum,mg as NetStats,v as Npc,ug as NpcEvent,Be as NpcNode,ke as NpcPath,xe as NpcRecord,yt as ObjectMaterialAlignmentEnum,St as ObjectMaterialTextSizeEnum,m as Player,at as PlayerEvent,Ne as PlayerStateEnum,Bt as RecordTypesEnum,It as SelectObjectTypesEnum,$e as SpecialActionsEnum,Ue as SpectateModesEnum,P as Streamer,xt as StreamerAreaTypes,D as StreamerDistances,S as StreamerItemTypes,We as StreamerMiscellaneous,je as StreamerObjectTypes,_ as TextDraw,vt as TextDrawAlignEnum,vg as TextDrawEvent,Te as TextDrawFontsEnum,C as Vehicle,zp as VehicleEvent,Lt as VehicleModelInfoEnum,Rt as VehicleParamsEnum,bt as WeaponEnum,Ot as WeaponSkillsEnum,Ft as WeaponStatesEnum,ni as animateLib,u as defineEvent,Og as defineHooks,Im as getAnimateDurationByLibName,wg as isHolding,Rg as isPressed,Lg as isPressing,bg as isReleased,et as isValidAnimateLib,tt as isValidAnimateName,E as rgba,Wr as useTrigger,jr as withTriggerOptions};