@infernus/core 0.12.0 → 0.12.1
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.d.ts +251 -14
- package/dist/bundle.js +4 -4
- package/dist/bundle.mjs +4 -4
- package/package.json +1 -1
package/dist/bundle.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var
|
|
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 ga(p(),i)}function u(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 h=c.indexOf(o.skipToNext);h>-1&&(d=h)}}return nt(e,d,...o.args)}return nt(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 h=F.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&&F.delete(t),h.length}}const s=[r,n];return i&&(typeof a<"u"&&samp.registerEvent(t,a),samp.on(t,n)),it.set(t,n),s}function Sa(e){return it.get(e)}function ya(e){return Object.assign(e,{__trigger__:!0})}const Pa=e=>!!samp.callNative("IsValidNickName","s",e),Ea=(e,t)=>{samp.callNative("AllowNickNameCharacter","ii",e,t)},Ia=e=>!!samp.callNative("IsNickNameCharacterAllowed","i",e),Aa=(e,t)=>!!samp.callNative("AddServerRule","ss",e,t),Ca=(e,t)=>!!samp.callNative("SetServerRule","ss",e,t),Ta=e=>!!samp.callNative("IsValidServerRule","s",e),Da=e=>!!samp.callNative("RemoveServerRule","s",e),Na=e=>{samp.callNative("AllowAdminTeleport","i",e)},va=()=>!!samp.callNative("IsAdminTeleportAllowed",""),wa=e=>{samp.callNative("AllowInteriorWeapons","i",e)},Ra=()=>!!samp.callNative("AreInteriorWeaponsAllowed",""),La=()=>!!samp.callNative("AreAllAnimationsEnabled",""),ba=e=>{samp.callNative("EnableAllAnimations","i",e)},Oa=e=>{const[t,a]=samp.callNative("GetConsoleVarAsString","sAi",e,64);return{consoleVarBuf:t,ret:a}},Ga=e=>samp.callNative("GetConsoleVarAsInt","s",e),Fa=e=>!!samp.callNative("GetConsoleVarAsBool","s",e),Ba=()=>samp.callNative("GetWeather",""),xa=e=>samp.callNative("GetServerRuleFlags","s",e),ka=(e,t)=>!!samp.callNative("SetServerRuleFlags","si",e,t),Ma=e=>!!samp.callNative("SetModeRestartTime","f",e),Ha=()=>samp.callNativeFloat("GetModeRestartTime",""),Va=(e,t,a)=>samp.callNative("GameTextForAll","aii",e,t,a),Ua=e=>{samp.callNative("HideGameTextForAll","i",e)},Wa=(e,t,a)=>samp.callNative("SendDeathMessage","iii",e,t,a),ja=()=>samp.callNative("GetMaxPlayers",""),He=(e,t,a)=>Math.sqrt(e*e+t*t+a*a),Ka=e=>samp.callNative("SetGameModeText","s",e),Za=e=>samp.callNative("ShowNameTags","i",e),Xa=e=>samp.callNative("ShowPlayerMarkers","i",e),Ya=e=>samp.callNative("SetWorldTime","i",e),za=()=>samp.callNative("GetWorldTime",""),$a=()=>!!samp.callNative("EnableVehicleFriendlyFire",""),Ja=e=>samp.callNative("SetWeather","i",e),Qa=()=>samp.callNativeFloat("GetGravity",""),qa=e=>samp.callNative("SetGravity","f",e),ei=(e,t,a,i,n)=>samp.callNative("CreateExplosion","fffif",e,t,a,i,n),ti=e=>samp.callNative("EnableZoneNames","i",e),ai=()=>!!samp.callNative("UsePlayerPedAnims",""),ii=()=>!!samp.callNative("DisableInteriorEnterExits",""),ni=e=>samp.callNative("SetNameTagDrawDistance","f",e),ri=()=>samp.callNative("DisableNameTagLOS",""),si=e=>samp.callNative("LimitGlobalChatRadius","f",e),li=e=>samp.callNative("LimitPlayerMarkerRadius","f",e),oi=(e,t)=>samp.callNative("ConnectNPC","ss",e,t),di=()=>samp.callNative("GetServerTickRate",""),ci=e=>samp.callNative("GetAnimationName","iSiSi",e,32,32),_i=e=>!!samp.callNative("EnableStuntBonusForAll","i",e),hi=e=>{samp.callNative("ToggleChatTextReplacement","i",e)},ui=()=>!!samp.callNative("ChatTextReplacementToggled",""),mi=e=>samp.callNative("GetWeaponSlot","i",e),pi=e=>{const[t,a]=samp.callNative("GetWeaponName","iSi",e,32);return{name:t,ret:a}},fi=()=>samp.callNative("GetAvailableClasses",""),gi=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,h=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:h,weapon3:p,weapon3Ammo:g,ret:f}},Si=(e,t,a,i,n,r,s,l,o,d,c,h,p)=>!!samp.callNative("EditPlayerClass","iiiffffiiiiii",e,t,a,i,n,r,s,l,o,d,c,h,p),yi=e=>samp.callNative("SetTeamCount","i",e),Pi=(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),Ei=(e,t,a,i,n,r,s,l,o,d,c,h)=>samp.callNative("AddPlayerClassEx","iiffffiiiiii",e,t,a,i,n,r,s,l,o,d,c,h),Ii=(e,t,a,i,n,r,s,l,o,d,c,h,p)=>!!samp.callNative("SetSpawnInfo","iiiffffiiiiii",e,t,a,i,n,r,s,l,o,d,c,h,p),Ai=e=>!!samp.callNative("SpawnPlayer","i",e),Ci=e=>{const[t,a=0,i=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:a,spawnX:i,spawnY:n,spawnZ:r,zAngle:s,weapon1:l,weapon1Ammo:o,weapon2:d,weapon2Ammo:c,weapon3:h,weapon3Ammo:p,ret:g}},Ti=e=>samp.callNative("NetStats_GetConnectedTime","i",e),Di=e=>samp.callNative("NetStats_MessagesReceived","i",e),Ni=e=>samp.callNative("NetStats_BytesReceived","i",e),vi=e=>samp.callNative("NetStats_MessagesSent","i",e),wi=e=>samp.callNative("NetStats_BytesSent","i",e),Ri=e=>samp.callNative("NetStats_MessagesRecvPerSecond","i",e),Li=e=>samp.callNativeFloat("NetStats_PacketLossPercent","i",e),bi=e=>samp.callNative("NetStats_ConnectionStatus","i",e),Oi=e=>{const[t,a]=samp.callNative("NetStats_GetIpPort","iSi",e,134);return{ipPort:t,ret:a}},Gi=e=>!!samp.callNative("IsPlayerAdmin","i",e),Fi=(e,t)=>!!samp.callNative("SetPlayerAdmin","ii",e,t),Bi=e=>!!samp.callNative("Kick","i",e),xi=e=>!!samp.callNative("Ban","i",e),ki=e=>{const[t,a]=samp.callNative("GetPlayerNetworkStats","iSi",e,1024);return{stats:t,ret:a}},Mi=()=>{const[e,t]=samp.callNative("GetNetworkStats","Si",1024);return{stats:e,ret:t}},Hi=(e,t)=>samp.callNative("BlockIpAddress","si",e,t),Vi=e=>samp.callNative("UnBlockIpAddress","s",e),Ui=(e,t)=>{const[a,i]=samp.callNative("gpci","iAi",e,41);return{val:E.decodeFromBuf(E.getValidStr(a),t),ret:i}},Wi=(e,t,a,i,n)=>samp.callNative("SendClientCheck","iiiii",e,t,a,i,n),ji=()=>{samp.callNative("ClearBanList","")},Ki=e=>!!samp.callNative("IsBanned","s",e),Zi=e=>samp.callNative("GetPlayerRawIp","i",e),Xi=e=>{const[t,a]=samp.callNative("GetPlayerIp","iSi",e,128);return{ip:t,ret:a}},Yi=e=>{const[t,a]=samp.callNative("GetPlayerVersion","iSi",e,24);return{version:t,ret:a}},I=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},zi=(e,t)=>!!samp.callNative("TogglePlayerWidescreen","ii",e,t),$i=e=>!!samp.callNative("IsPlayerWidescreenToggled","i",e),Ji=(e,t)=>samp.callNative("GetPlayerSkillLevel","ii",e,t),Qi=e=>samp.callNative("GetPlayerWeather","i",e),qi=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}},en=e=>samp.callNativeFloat("GetPlayerZAim","i",e),tn=e=>{const[t=0,a=0,i=0,n]=samp.callNative("GetPlayerSurfingOffsets","iFFF",e);return{fOffsetX:t,fOffsetY:a,fOffsetZ:i,ret:n}},an=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}},nn=e=>samp.callNative("GetPlayerDialogID","i",e),rn=e=>samp.callNative("GetPlayerSpectateID","i",e),sn=e=>samp.callNative("GetPlayerSpectateType","i",e),ln=(e,t)=>!!samp.callNative("SetPlayerGravity","if",e,t),on=e=>samp.callNativeFloat("GetPlayerGravity","i",e),dn=e=>!!samp.callNative("IsPlayerSpawned","i",e),cn=e=>!!samp.callNative("IsPlayerControllable","i",e),_n=e=>!!samp.callNative("IsPlayerCameraTargetEnabled","i",e),hn=(e,t)=>!!samp.callNative("TogglePlayerGhostMode","ii",e,t),un=e=>!!samp.callNative("GetPlayerGhostMode","i",e),mn=e=>samp.callNative("GetPlayerBuildingsRemoved","i",e),pn=(e,t)=>!!samp.callNative("RemovePlayerWeapon","ii",e,t),fn=e=>!!samp.callNative("HidePlayerDialog","i",e),gn=e=>!!samp.callNative("IsPlayerUsingOfficialClient","i",e),Sn=(e,t)=>!!samp.callNative("AllowPlayerTeleport","ii",e,t),yn=e=>!!samp.callNative("IsPlayerTeleportAllowed","i",e),Pn=(e,t)=>!!samp.callNative("AllowPlayerWeapons","i",e,t),En=e=>!!samp.callNative("ArePlayerWeaponsAllowed","i",e),In=(e,t,a,i)=>!!samp.callNative("GameTextForPlayer","iaii",e,t,a,i),An=(e,t)=>!!samp.callNative("HasGameText","ii",e,t),Cn=(e,t,a,i)=>!!samp.callNative("SendDeathMessageToPlayer","iiii",e,t,a,i),Tn=(e,t)=>!!samp.callNative("HideGameTextForPlayer","ii",e,t),Dn=e=>!!samp.callNative("IsPlayerNPC","i",e),Nn=(e,t,a,i)=>!!samp.callNative("SetPlayerPos","ifff",e,t,a,i),vn=(e,t,a,i)=>!!samp.callNative("SetPlayerPosFindZ","ifff",e,t,a,i),wn=e=>{const[t,a,i,n]=samp.callNative("GetPlayerPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},Rn=(e,t)=>!!samp.callNative("SetPlayerFacingAngle","if",e,t),Ln=e=>{const[t,a]=samp.callNative("GetPlayerFacingAngle","iF",e);return{angle:t,ret:a}},bn=(e,t,a,i,n)=>!!samp.callNative("IsPlayerInRangeOfPoint","iffff",e,t,a,i,n),On=(e,t,a,i)=>samp.callNativeFloat("GetPlayerDistanceFromPoint","ifff",e,t,a,i),Gn=(e,t)=>!!samp.callNative("IsPlayerStreamedIn","ii",e,t),Fn=(e,t)=>!!samp.callNative("SetPlayerInterior","ii",e,t),Bn=e=>samp.callNative("GetPlayerInterior","i",e),xn=(e,t)=>!!samp.callNative("SetPlayerHealth","if",e,t),kn=e=>{const[t,a]=samp.callNative("GetPlayerHealth","iF",e);return{health:t,ret:a}},Mn=(e,t)=>!!samp.callNative("SetPlayerArmour","if",e,t),Hn=e=>{const[t,a]=samp.callNative("GetPlayerArmour","iF",e);return{armour:t,ret:a}},Vn=(e,t,a)=>!!samp.callNative("SetPlayerAmmo","iii",e,t,a),Un=e=>samp.callNative("GetPlayerAmmo","i",e),Wn=e=>samp.callNative("GetPlayerWeaponState","i",e),jn=e=>samp.callNative("GetPlayerTargetPlayer","i",e),Kn=(e,t)=>{samp.callNative("SetPlayerTeam","ii",e,t)},Zn=e=>samp.callNative("GetPlayerTeam","i",e),Xn=(e,t)=>!!samp.callNative("SetPlayerScore","ii",e,t),Yn=e=>samp.callNative("GetPlayerScore","i",e),zn=e=>samp.callNative("GetPlayerDrunkLevel","i",e),$n=(e,t)=>!!samp.callNative("SetPlayerDrunkLevel","ii",e,t),Jn=(e,t)=>!!samp.callNative("SetPlayerColor","ii",e,I(t)),Qn=e=>samp.callNative("GetPlayerColor","i",e),qn=(e,t)=>!!samp.callNative("SetPlayerSkin","ii",e,t),er=e=>samp.callNative("GetPlayerSkin","i",e),tr=(e,t,a)=>!!samp.callNative("GivePlayerWeapon","iii",e,t,a),ar=e=>!!samp.callNative("ResetPlayerWeapons","i",e),ir=(e,t)=>!!samp.callNative("SetPlayerArmedWeapon","ii",e,t),nr=(e,t)=>{const[a,i,n]=samp.callNative("GetPlayerWeaponData","iiII",e,t);return{weapons:a,ammo:i,ret:n}},rr=(e,t)=>!!samp.callNative("GivePlayerMoney","ii",e,t),sr=e=>!!samp.callNative("ResetPlayerMoney","i",e),lr=e=>samp.callNative("GetPlayerMoney","i",e),or=e=>samp.callNative("GetPlayerState","i",e),dr=e=>samp.callNative("GetPlayerPing","i",e),cr=e=>samp.callNative("GetPlayerWeapon","i",e),_r=e=>{const[t,a,i,n]=samp.callNative("GetPlayerKeys","iIII",e);return{keys:t,upDown:a,leftRight:i,ret:n}},hr=(e,t,a)=>!!samp.callNative("SetPlayerTime","iii",e,t,a),ur=e=>{const[t,a,i]=samp.callNative("GetPlayerTime","iII",e);return{hour:t,minute:a,ret:i}},mr=(e,t)=>!!samp.callNative("TogglePlayerClock","ii",e,t),pr=(e,t)=>!!samp.callNative("SetPlayerWeather","ii",e,t),fr=e=>!!samp.callNative("ForceClassSelection","i",e),gr=(e,t)=>!!samp.callNative("SetPlayerWantedLevel","ii",e,t),Sr=e=>samp.callNative("GetPlayerWantedLevel","i",e),yr=(e,t)=>!!samp.callNative("SetPlayerFightingStyle","ii",e,t),Pr=e=>samp.callNative("GetPlayerFightingStyle","i",e),Er=(e,t,a,i)=>!!samp.callNative("SetPlayerVelocity","ifff",e,t,a,i),Ir=e=>{const[t,a,i,n]=samp.callNative("GetPlayerVelocity","iFFF",e);return{x:t,y:a,z:i,ret:n}},Ar=(e,t,a)=>!!samp.callNative("PlayCrimeReportForPlayer","iii",e,t,a),Cr=(e,t,a,i,n,r,s=!1)=>!!samp.callNative("PlayAudioStreamForPlayer","isffffi",e,t,a,i,n,r,s),Tr=e=>!!samp.callNative("StopAudioStreamForPlayer","i",e),Dr=(e,t)=>!!samp.callNative("SetPlayerShopName","is",e,t),Nr=(e,t,a)=>!!samp.callNative("SetPlayerSkillLevel","iii",e,t,a),vr=e=>samp.callNative("GetPlayerSurfingVehicleID","i",e),wr=e=>samp.callNative("GetPlayerSurfingObjectID","i",e),Rr=e=>samp.callNative("GetPlayerSurfingPlayerObjectID","i",e),Lr=(e,t,a,i,n,r)=>!!samp.callNative("RemoveBuildingForPlayer","iiffff",e,t,a,i,n,r),br=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}},Or=(e,t,a)=>!!samp.callNative("PutPlayerInVehicle","iii",e,t,a),Gr=e=>samp.callNative("GetPlayerVehicleID","i",e),Fr=e=>samp.callNative("GetPlayerVehicleSeat","i",e),Br=e=>!!samp.callNative("RemovePlayerFromVehicle","i",e),xr=(e,t)=>!!samp.callNative("TogglePlayerControllable","ii",e,t),kr=(e,t,a,i,n)=>!!samp.callNative("PlayerPlaySound","iifff",e,t,a,i,n),Mr=(e,t,a,i,n,r,s,l,o,d)=>!!samp.callNative("ApplyAnimation","issfiiiiii",e,t,a,i,n,r,s,l,o,d),Hr=(e,t)=>!!samp.callNative("ClearAnimations","ii",e,t),Vr=e=>samp.callNative("GetPlayerAnimationIndex","i",e),Ur=e=>samp.callNative("GetPlayerSpecialAction","i",e),Wr=(e,t)=>!!samp.callNative("SetPlayerSpecialAction","ii",e,t),jr=(e,t)=>!!samp.callNative("DisableRemoteVehicleCollisions","ii",e,t),Kr=(e,t)=>!!samp.callNative("SetPlayerVirtualWorld","ii",e,t),Zr=e=>samp.callNative("GetPlayerVirtualWorld","i",e),Xr=(e,t)=>!!samp.callNative("EnableStuntBonusForPlayer","ii",e,t),Yr=e=>samp.callNative("GetPlayerCustomSkin","i",e),zr=(e,t,a,i,n,r)=>!!samp.callNative("CreateExplosionForPlayer","ifffif",e,t,a,i,n,r),$r=(e,t,a)=>!!samp.callNative("StartRecordingPlayerData","iis",e,t,a),Jr=e=>!!samp.callNative("StopRecordingPlayerData","i",e),Qr=(e,t)=>!!samp.callNative("TogglePlayerSpectating","ii",e,t),qr=(e,t,a)=>!!samp.callNative("PlayerSpectatePlayer","iii",e,t,a),es=(e,t,a)=>!!samp.callNative("PlayerSpectateVehicle","iii",e,t,a),ts=e=>!!samp.callNative("IsPlayerConnected","i",e),as=(e,t)=>!!samp.callNative("IsPlayerInVehicle","ii",e,t),is=e=>!!samp.callNative("IsPlayerInAnyVehicle","i",e),ns=(e,t,a,i,n)=>!!samp.callNative("SetPlayerWorldBounds","iffff",e,t,a,i,n),rs=e=>!!samp.callNative("ClearPlayerWorldBounds","i",e),ss=(e,t,a)=>!!samp.callNative("SetPlayerMarkerForPlayer","iii",e,t,I(a));function ls(e,t){return samp.callNative("GetPlayerMarkerForPlayer","ii",e,t)}const os=(e,t,a)=>!!samp.callNative("ShowPlayerNameTagForPlayer","iii",e,t,a),ds=(e,t,a,i)=>!!samp.callNative("SetPlayerCameraPos","ifff",e,t,a,i),cs=(e,t,a,i,n)=>!!samp.callNative("SetPlayerCameraLookAt","ifffi",e,t,a,i,n),_s=e=>!!samp.callNative("SetCameraBehindPlayer","i",e),hs=e=>{const[t,a,i,n]=samp.callNative("GetPlayerCameraPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},us=e=>{const[t,a,i,n]=samp.callNative("GetPlayerCameraFrontVector","iFFF",e);return{x:t,y:a,z:i,ret:n}},ms=e=>samp.callNative("GetPlayerCameraMode","i",e),ps=(e,t)=>!!samp.callNative("EnablePlayerCameraTarget","ii",e,t),fs=e=>samp.callNative("GetPlayerCameraTargetVehicle","i",e),gs=e=>samp.callNative("GetPlayerCameraTargetPlayer","i",e),Ss=e=>samp.callNativeFloat("GetPlayerCameraAspectRatio","i",e),ys=e=>samp.callNativeFloat("GetPlayerCameraZoom","i",e),Ps=(e,t,a,i,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraPos","iffffffii",e,t,a,i,n,r,s,l,o),Es=(e,t,a,i,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraLookAt","iffffffii",e,t,a,i,n,r,s,l,o),Is=e=>!!samp.callNative("IsPlayerCuffed","i",e),As=e=>!!samp.callNative("IsPlayerInDriveByMode","i",e),Cs=e=>!!samp.callNative("IsPlayerUsingOmp","i",e),Ts=(e,t)=>samp.callNative("StartRecordingPlayback","is",e,t),Ds=()=>samp.callNative("StopRecordingPlayback",""),Ns=()=>samp.callNative("PauseRecordingPlayback",""),vs=()=>samp.callNative("ResumeRecordingPlayback",""),ws=e=>samp.callNative("GetActorSkin","i",e),Rs=(e,t)=>samp.callNative("SetActorSkin","ii",e,t),Ls=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}},bs=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}},Os=(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),Gs=e=>{const[t=0,a=0,i]=samp.callNative("GetVehicleColor","iII",e);return{color1:t,color2:a,ret:i}},Fs=e=>samp.callNative("GetVehiclePaintjob","i",e),Bs=e=>samp.callNative("GetVehicleInterior","i",e),xs=e=>{const[t,a]=samp.callNative("GetVehicleNumberPlate","iSi",e,33);return{plate:t,ret:a}},ks=(e,t)=>samp.callNative("SetVehicleRespawnDelay","ii",e,t),Ms=e=>samp.callNative("GetVehicleRespawnDelay","i",e),Hs=e=>samp.callNative("GetVehicleCab","i",e),Vs=e=>samp.callNative("GetVehicleOccupiedTick","i",e),Us=(e,t)=>samp.callNative("SetVehicleOccupiedTick","ii",e,t),Ws=e=>!!samp.callNative("HasVehicleBeenOccupied","i",e),js=e=>!!samp.callNative("IsVehicleOccupied","i",e),Ks=e=>samp.callNative("GetVehicleRespawnTick","i",e),Zs=(e,t)=>samp.callNative("SetVehicleRespawnTick","ii",e,t),Xs=e=>!!samp.callNative("IsVehicleDead","i",e),Ys=(e,t)=>!!samp.callNative("SetVehicleDead","ii",e,t),zs=(e,t)=>!!samp.callNative("SetVehicleBeenOccupied","ii",e,t),$s=(e,t)=>samp.callNative("ToggleVehicleSirenEnabled","ii",e,t),Js=(e,t)=>samp.callNative("SetVehicleParamsSirenState","ii",e,t),Qs=e=>!!samp.callNative("IsVehicleSirenEnabled","i",e),qs=e=>samp.callNative("GetVehicleModelCount","i",e),el=e=>samp.callNative("GetVehicleLastDriver","i",e),tl=e=>samp.callNative("GetVehicleDriver","i",e),al=()=>samp.callNative("GetVehicleModelsUsed",""),il=e=>samp.callNative("GetVehicleSirenState","i",e),nl=e=>samp.callNative("GetVehicleLandingGearState","i",e),rl=e=>samp.callNativeFloat("GetVehicleHydraReactorAngle","i",e),sl=e=>samp.callNativeFloat("GetVehicleTrainSpeed","i",e),ll=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}},rt=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("GetRandomCarColPair","iIIII",e);return{color:[t,a,i,n],ret:r}},ol=(e,t=255)=>samp.callNative("CarColIndexToColour","ii",e,t),dl=(e,t,a,i,n,r,s,l,o)=>samp.callNative("CreateVehicle","iffffiiii",e,t,a,i,n,I(r),I(s),l,o),cl=e=>samp.callNative("DestroyVehicle","i",e),_l=(e,t)=>!!samp.callNative("IsVehicleStreamedIn","ii",e,t),hl=e=>{const[t,a,i,n]=samp.callNative("GetVehiclePos","iFFF",e);return{x:t,y:a,z:i,ret:n}},ul=(e,t,a,i)=>!!samp.callNative("SetVehiclePos","ifff",e,t,a,i),ml=e=>{const[t,a]=samp.callNative("GetVehicleZAngle","iF",e);return{angle:t,ret:a}},pl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleRotationQuat","iFFFF",e);return{w:t,x:a,y:i,z:n,ret:r}},fl=(e,t,a,i)=>samp.callNativeFloat("GetVehicleDistanceFromPoint","ifff",e,t,a,i),gl=(e,t)=>samp.callNative("SetVehicleZAngle","if",e,t),Sl=(e,t,a,i)=>samp.callNative("SetVehicleParamsForPlayer","iiii",e,t,a,i),yl=()=>samp.callNative("ManualVehicleEngineAndLights",""),Pl=(e,t,a,i,n,r,s,l)=>samp.callNative("SetVehicleParamsEx","iiiiiiii",e,t,a,i,n,r,s,l),El=e=>samp.callNative("GetVehicleParamsEx","iIIIIIII",e),Il=e=>samp.callNative("GetVehicleParamsSirenState","i",e),Al=(e,t,a,i,n)=>samp.callNative("SetVehicleParamsCarDoors","iiiii",e,t,a,i,n),Cl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleParamsCarDoors","iIIII",e);return{driver:t,passenger:a,backLeft:i,backRight:n,ret:r}},Tl=(e,t,a,i,n)=>samp.callNative("SetVehicleParamsCarWindows","iiiii",e,t,a,i,n),Dl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleParamsCarWindows","iIIII",e);return{driver:t,passenger:a,backLeft:i,backRight:n,ret:r}},Nl=e=>samp.callNative("SetVehicleToRespawn","i",e),vl=(e,t)=>samp.callNative("LinkVehicleToInterior","ii",e,t),wl=(e,t)=>samp.callNative("AddVehicleComponent","ii",e,t),Rl=(e,t)=>samp.callNative("RemoveVehicleComponent","ii",e,t),Ll=(e,t,a)=>samp.callNative("ChangeVehicleColor","iii",e,I(t),I(a)),bl=(e,t)=>samp.callNative("ChangeVehiclePaintjob","ii",e,t),Ol=(e,t)=>samp.callNative("SetVehicleHealth","if",e,t),Gl=e=>{const[t,a]=samp.callNative("GetVehicleHealth","iF",e);return{health:t,ret:a}},Fl=(e,t)=>samp.callNative("AttachTrailerToVehicle","ii",e,t),Bl=e=>samp.callNative("DetachTrailerFromVehicle","i",e),xl=e=>!!samp.callNative("IsTrailerAttachedToVehicle","i",e),kl=e=>samp.callNative("GetVehicleTrailer","i",e),Ml=(e,t)=>samp.callNative("SetVehicleNumberPlate","is",e,t),Hl=e=>samp.callNative("GetVehicleModel","i",e),Vl=(e,t)=>samp.callNative("GetVehicleComponentInSlot","ii",e,t),Ul=e=>samp.callNative("GetVehicleComponentType","i",e),Wl=e=>samp.callNative("RepairVehicle","i",e),jl=e=>{const[t,a,i,n]=samp.callNative("GetVehicleVelocity","iFFF",e);return{x:t,y:a,z:i,ret:n}},Kl=(e,t,a,i)=>!!samp.callNative("SetVehicleVelocity","ifff",e,t,a,i),Zl=(e,t,a,i)=>!!samp.callNative("SetVehicleAngularVelocity","ifff",e,t,a,i),Xl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleDamageStatus","iIIII",e);return{panels:t,doors:a,lights:i,tires:n,ret:r}},Yl=(e,t,a,i,n)=>samp.callNative("UpdateVehicleDamageStatus","iiiii",e,t,a,i,n),zl=(e,t)=>{const[a,i,n,r]=samp.callNative("GetVehicleModelInfo","iiFFF",e,t);return{x:a,y:i,z:n,ret:r}},$l=(e,t)=>samp.callNative("SetVehicleVirtualWorld","ii",e,t),Jl=e=>samp.callNative("GetVehicleVirtualWorld","i",e),Ql=e=>!!samp.callNative("IsValidVehicle","i",e),ql=(e,t,a,i,n,r,s)=>samp.callNative("AddStaticVehicle","iffffii",e,t,a,i,n,I(r),I(s)),eo=(e,t,a,i,n,r,s,l,o)=>samp.callNative("AddStaticVehicleEx","iffffiiii",e,t,a,i,n,I(r),I(s),l,o),to=e=>!!samp.callNative("ShowVehicle","i",e),ao=e=>!!samp.callNative("HideVehicle","i",e),io=e=>!!samp.callNative("IsVehicleHidden","i",e),no=e=>!!samp.callNative("IsPlayerInModShop","i",e),ro=e=>samp.callNative("GetPlayerSirenState","i",e),so=e=>samp.callNative("GetPlayerLandingGearState","i",e),lo=e=>samp.callNative("GetPlayerHydraReactorAngle","i",e),oo=e=>samp.callNativeFloat("GetPlayerTrainSpeed","i",e),co=(e,t)=>samp.callNative("GetVehicleOccupant","ii",e,t),st=e=>samp.callNative("GetVehicleMaxPassengers","i",e),_o=e=>samp.callNative("CountVehicleOccupants","i",e),ho=e=>!!samp.callNative("IsPlayerCheckpointActive","i",e),uo=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}},mo=e=>!!samp.callNative("IsPlayerRaceCheckpointActive","i",e),po=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}},fo=e=>!!samp.callNative("IsMenuDisabled","i",e),go=(e,t)=>!!samp.callNative("IsMenuRowDisabled","ii",e,t),So=(e,t)=>samp.callNative("GetMenuItems","ii",e,t),yo=e=>{const[t=0,a=0,i]=samp.callNative("GetMenuPos","iFF",e);return{fX:t,fY:a,ret:i}},Po=e=>{const[t=0,a=0,i]=samp.callNative("GetMenuColumnWidth","iFF",e);return{fColumn1:t,fColumn2:a,ret:i}},Eo=(e,t)=>{const[a,i]=samp.callNative("GetMenuColumnHeader","iiSi",e,t,31);return{header:a,ret:i}},Io=(e,t,a)=>{const[i,n]=samp.callNative("GetMenuItem","iiiSi",e,t,a,31);return{item:i,ret:n}},Ao=(e,t,a,i,n,r)=>samp.callNative("CreateMenu","siffff",e,t,a,i,n,r),Co=e=>samp.callNative("DestroyMenu","i",e),To=(e,t,a)=>samp.callNative("AddMenuItem","iis",e,t,a),Do=(e,t,a)=>samp.callNative("SetMenuColumnHeader","iis",e,t,a),No=(e,t)=>samp.callNative("ShowMenuForPlayer","ii",e,t),vo=(e,t)=>samp.callNative("HideMenuForPlayer","ii",e,t),wo=e=>!!samp.callNative("IsValidMenu","i",e),Ro=e=>samp.callNative("DisableMenu","i",e),Lo=(e,t)=>samp.callNative("DisableMenuRow","ii",e,t),bo=e=>samp.callNative("GetPlayerMenu","i",e),Oo=e=>!!samp.callNative("IsValidGangZone","i",e),Go=(e,t)=>!!samp.callNative("IsPlayerInGangZone","ii",e,t),Fo=(e,t)=>!!samp.callNative("IsGangZoneVisibleForPlayer","ii",e,t),Bo=(e,t)=>samp.callNative("GangZoneGetColorForPlayer","ii",e,t),xo=(e,t)=>samp.callNative("GangZoneGetFlashColorForPlayer","ii",e,t),ko=(e,t)=>!!samp.callNative("IsGangZoneFlashingForPlayer","ii",e,t),Mo=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}},Ho=(e,t)=>{samp.callNative("UseGangZoneCheck","ii",e,t)},Vo=(e,t,a,i)=>samp.callNative("GangZoneCreate","ffff",e,t,a,i),Uo=e=>samp.callNative("GangZoneDestroy","i",e),Wo=(e,t,a)=>samp.callNative("GangZoneShowForPlayer","iii",e,t,I(a)),jo=(e,t)=>samp.callNative("GangZoneShowForAll","ii",e,I(t)),Ko=(e,t)=>samp.callNative("GangZoneHideForPlayer","ii",e,t),Zo=e=>samp.callNative("GangZoneHideForAll","i",e),Xo=(e,t,a)=>samp.callNative("GangZoneFlashForPlayer","iii",e,t,I(a)),Yo=(e,t)=>samp.callNative("GangZoneFlashForAll","ii",e,I(t)),zo=(e,t)=>samp.callNative("GangZoneStopFlashForPlayer","ii",e,t),$o=e=>samp.callNative("GangZoneStopFlashForAll","i",e),Jo=(e,t,a,i,n)=>samp.callNative("CreatePlayerGangZone","iffff",e,t,a,i,n),Qo=(e,t)=>samp.callNative("PlayerGangZoneDestroy","ii",e,t),qo=(e,t,a)=>samp.callNative("PlayerGangZoneShow","iii",e,t,a),ed=(e,t)=>samp.callNative("PlayerGangZoneHide","ii",e,t),td=(e,t,a)=>samp.callNative("PlayerGangZoneFlash","iii",e,t,a),ad=(e,t)=>samp.callNative("PlayerGangZoneStopFlash","ii",e,t),id=(e,t)=>!!samp.callNative("IsValidPlayerGangZone","ii",e,t),nd=(e,t)=>!!samp.callNative("IsPlayerInPlayerGangZone","ii",e,t),rd=(e,t)=>!!samp.callNative("IsPlayerGangZoneVisible","ii",e,t),sd=(e,t)=>samp.callNative("PlayerGangZoneGetColor","ii",e,t),ld=(e,t)=>samp.callNative("PlayerGangZoneGetFlashColor","ii",e,t),od=(e,t)=>!!samp.callNative("IsPlayerGangZoneFlashing","ii",e,t),dd=(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}},cd=(e,t,a)=>{samp.callNative("UsePlayerGangZoneCheck","iii",e,t,a)},_d=e=>!!samp.callNative("IsValidTextDraw","i",e),hd=(e,t)=>!!samp.callNative("IsTextDrawVisibleForPlayer","ii",e,t),ud=e=>{const[t,a]=samp.callNative("TextDrawGetString","iSi",e,1024);return{str:t,ret:a}},md=(e,t,a)=>{samp.callNative("TextDrawSetPos","iff",e,t,a)},pd=e=>{const[t=0,a=0,i]=samp.callNative("TextDrawGetLetterSize","iFF",e);return{fX:t,fY:a,ret:i}},fd=e=>{const[t=0,a=0,i]=samp.callNative("TextDrawGetTextSize","iFF",e);return{fX:t,fY:a,ret:i}},gd=e=>{const[t=0,a=0,i]=samp.callNative("TextDrawGetPos","iFF",e);return{fX:t,fY:a,ret:i}},Sd=e=>samp.callNative("TextDrawGetColor","i",e),yd=e=>samp.callNative("TextDrawGetBoxColor","i",e),Pd=e=>samp.callNative("TextDrawGetBackgroundColor","i",e),Ed=e=>samp.callNative("TextDrawGetShadow","i",e),Id=e=>samp.callNative("TextDrawGetOutline","i",e),Ad=e=>samp.callNative("TextDrawGetFont","i",e),Cd=e=>!!samp.callNative("TextDrawIsBox","i",e),Td=e=>!!samp.callNative("TextDrawIsProportional","i",e),Dd=e=>!!samp.callNative("TextDrawIsSelectable","i",e),Nd=e=>samp.callNative("TextDrawGetAlignment","i",e),vd=e=>samp.callNative("TextDrawGetPreviewModel","i",e),wd=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}},Rd=e=>{const[t,a,i]=samp.callNative("TextDrawGetPreviewVehCol","iII",e);return{color1:t,color2:a,ret:i}},Ld=(e,t,a)=>{samp.callNative("TextDrawSetStringForPlayer","iia",e,t,a)},bd=(e,t,a)=>samp.callNative("TextDrawCreate","ffa",e,t,a),Od=e=>samp.callNative("TextDrawDestroy","i",e),Gd=(e,t,a)=>samp.callNative("TextDrawLetterSize","iff",e,t,a),Fd=(e,t,a)=>samp.callNative("TextDrawTextSize","iff",e,t,a),Bd=(e,t)=>samp.callNative("TextDrawAlignment","ii",e,t),xd=(e,t)=>!!samp.callNative("TextDrawColor","ii",e,I(t)),kd=(e,t)=>samp.callNative("TextDrawUseBox","ii",e,t),Md=(e,t)=>!!samp.callNative("TextDrawBoxColor","ii",e,I(t)),Hd=(e,t)=>samp.callNative("TextDrawSetShadow","ii",e,t),Vd=(e,t)=>samp.callNative("TextDrawSetOutline","ii",e,t),Ud=(e,t)=>!!samp.callNative("TextDrawBackgroundColor","ii",e,I(t)),Wd=(e,t)=>samp.callNative("TextDrawFont","ii",e,t),jd=(e,t)=>samp.callNative("TextDrawSetProportional","ii",e,t),Kd=(e,t)=>samp.callNative("TextDrawSetSelectable","ii",e,t),Zd=(e,t)=>samp.callNative("TextDrawShowForPlayer","ii",e,t),Xd=(e,t)=>samp.callNative("TextDrawHideForPlayer","ii",e,t),Yd=e=>samp.callNative("TextDrawShowForAll","i",e),zd=e=>samp.callNative("TextDrawHideForAll","i",e),$d=(e,t)=>samp.callNative("TextDrawSetString","ia",e,t),Jd=(e,t)=>samp.callNative("TextDrawSetPreviewModel","ii",e,t),Qd=(e,t,a,i,n=1)=>{samp.callNative("TextDrawSetPreviewRot","iffff",e,t,a,i,n)},qd=(e,t,a)=>!!samp.callNative("TextDrawSetPreviewVehCol","iii",e,I(t),I(a)),ec=(e,t)=>{samp.callNative("SelectTextDraw","ii",e,I(t))},tc=e=>{samp.callNative("CancelSelectTextDraw","i",e)},ac=(e,t)=>!!samp.callNative("IsValidPlayerTextDraw","ii",e,t),ic=(e,t)=>!!samp.callNative("IsPlayerTextDrawVisible","ii",e,t),nc=(e,t)=>{const[a,i]=samp.callNative("PlayerTextDrawGetString","iiSi",e,t,1024);return{str:a,ret:i}},rc=(e,t,a,i)=>{samp.callNative("PlayerTextDrawSetPos","iiff",e,t,a,i)},sc=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetLetterSize","iiFF",e,t);return{fX:a,fY:i,ret:n}},lc=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetTextSize","iiFF",e,t);return{fX:a,fY:i,ret:n}},oc=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetPos","iiFF",e,t);return{fX:a,fY:i,ret:n}},dc=(e,t)=>samp.callNative("PlayerTextDrawGetColor","ii",e,t),cc=(e,t)=>samp.callNative("PlayerTextDrawGetBoxColor","ii",e,t),_c=(e,t)=>samp.callNative("PlayerTextDrawGetBackgroundColor","ii",e,t),hc=(e,t)=>samp.callNative("PlayerTextDrawGetShadow","ii",e,t),uc=(e,t)=>samp.callNative("PlayerTextDrawGetOutline","ii",e,t),mc=(e,t)=>samp.callNative("PlayerTextDrawGetFont","ii",e,t),pc=(e,t)=>!!samp.callNative("PlayerTextDrawIsBox","ii",e,t),fc=(e,t)=>!!samp.callNative("PlayerTextDrawIsProportional","ii",e,t),gc=(e,t)=>!!samp.callNative("PlayerTextDrawIsSelectable","ii",e,t),Sc=(e,t)=>samp.callNative("PlayerTextDrawGetAlignment","ii",e,t),yc=(e,t)=>samp.callNative("PlayerTextDrawGetPreviewModel","ii",e,t),Pc=(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}},Ec=(e,t)=>{const[a,i,n]=samp.callNative("PlayerTextDrawGetPreviewVehCol","iiII",e,t);return{color1:a,color2:i,ret:n}},Ic=(e,t,a,i)=>samp.callNative("CreatePlayerTextDraw","iffa",e,t,a,i),Ac=(e,t)=>{samp.callNative("PlayerTextDrawDestroy","ii",e,t)},Cc=(e,t,a,i)=>samp.callNative("PlayerTextDrawLetterSize","iiff",e,t,a,i),Tc=(e,t,a,i)=>samp.callNative("PlayerTextDrawTextSize","iiff",e,t,a,i),Dc=(e,t,a)=>samp.callNative("PlayerTextDrawAlignment","iii",e,t,a),Nc=(e,t,a)=>!!samp.callNative("PlayerTextDrawColor","iii",e,t,I(a)),vc=(e,t,a)=>samp.callNative("PlayerTextDrawUseBox","iii",e,t,a),wc=(e,t,a)=>!!samp.callNative("PlayerTextDrawBoxColor","iii",e,t,I(a)),Rc=(e,t,a)=>samp.callNative("PlayerTextDrawSetShadow","iii",e,t,a),Lc=(e,t,a)=>samp.callNative("PlayerTextDrawSetOutline","iii",e,t,a),bc=(e,t,a)=>!!samp.callNative("PlayerTextDrawBackgroundColor","iii",e,t,I(a)),Oc=(e,t,a)=>samp.callNative("PlayerTextDrawFont","iii",e,t,a),Gc=(e,t,a)=>samp.callNative("PlayerTextDrawSetProportional","iii",e,t,a),Fc=(e,t,a)=>samp.callNative("PlayerTextDrawSetSelectable","iii",e,t,a),Bc=(e,t)=>samp.callNative("PlayerTextDrawShow","ii",e,t),xc=(e,t)=>samp.callNative("PlayerTextDrawHide","ii",e,t),kc=(e,t,a)=>samp.callNative("PlayerTextDrawSetString","iia",e,t,a),Mc=(e,t,a)=>samp.callNative("PlayerTextDrawSetPreviewModel","iii",e,t,a),Hc=(e,t,a,i,n,r)=>samp.callNative("PlayerTextDrawSetPreviewRot","iiffff",e,t,a,i,n,r),Vc=(e,t,a,i)=>!!samp.callNative("PlayerTextDrawSetPreviewVehCol","iiii",e,t,a,i),Uc=(e,t)=>!!samp.callNative("EditAttachedObject","ii",e,t),Wc=e=>!!samp.callNative("BeginObjectSelecting","i",e),jc=e=>!!samp.callNative("EndObjectEditing","i",e),Kc=e=>!!samp.callNative("SetObjectsDefaultCameraCol","i",e),Zc=(e,t,a,i,n)=>samp.callNative("AddSimpleModel","iiiss",e,t,a,i,n),Xc=(e,t,a,i,n,r,s)=>samp.callNative("AddSimpleModelTimed","iiissii",e,t,a,i,n,r,s),Yc=(e,t)=>samp.callNative("RedirectDownload","is",e,t),zc=e=>{const[t,a]=samp.callNative("FindModelFileNameFromCRC","iSi",e,255);return{name:t,ret:a}},$c=e=>{const[t,a]=samp.callNative("FindTextureFileNameFromCRC","iSi",e,255);return{name:t,ret:a}},Jc=(e,t)=>{const[a=0,i=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:a,bone:i,fX:n,fY:r,fZ:s,fRotX:l,fRotY:o,fRotZ:d,fScaleX:c,fScaleY:h,fScaleZ:p,materialColor1:g,materialColor2:f,ret:y}},Qc=(e,t,a,i,n,r,s,l,o,d,c,h,p,g,f)=>samp.callNative("SetPlayerAttachedObject","iiiifffffffffii",e,t,a,i,n,r,s,l,o,d,c,h,p,I(g),I(f)),qc=(e,t)=>samp.callNative("RemovePlayerAttachedObject","ii",e,t),e_=(e,t)=>!!samp.callNative("IsPlayerAttachedObjectSlotUsed","ii",e,t),lt=e=>!!samp.callNative("IsValidCustomModel","i",e),t_=e=>{if(!lt(e))return null;const[t,a,i]=samp.callNative("GetCustomModePath","iSiSi",e,255,255);return{dffPath:t,txdPath:a,ret:i}};var ot=(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))(ot||{}),dt=(e=>(e[e.SCOREBOARD=0]="SCOREBOARD",e))(dt||{}),Ve=(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))(Ve||{}),ct=(e=>(e[e.CANCEL=0]="CANCEL",e[e.FINAL=1]="FINAL",e[e.UPDATE=2]="UPDATE",e))(ct||{}),_t=(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))(_t||{}),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||{}),ht=(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))(ht||{}),H=(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))(H||{}),ut=(e=>(e[e.OFF=0]="OFF",e[e.GLOBAL=1]="GLOBAL",e[e.STREAMED=2]="STREAMED",e))(ut||{}),mt=(e=>(e[e.NONE=1]="NONE",e[e.DRIVER=2]="DRIVER",e[e.ONFOOT=3]="ONFOOT",e))(mt||{}),V=(e=>(e[e.none=0]="none",e[e.start=1]="start",e[e.pause=2]="pause",e))(V||{}),pt=(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))(pt||{}),ft=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(ft||{}),gt=(e=>(e[e.GLOBAL_OBJECT=1]="GLOBAL_OBJECT",e[e.PLAYER_OBJECT=2]="PLAYER_OBJECT",e))(gt||{}),St=(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))(St||{}),yt=(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))(yt||{}),ye=(e=>(e[e.MOVE=1]="MOVE",e[e.CUT=2]="CUT",e))(ye||{}),Pt=(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))(Pt||{}),be=(e=>(e[e.NORMAL=1]="NORMAL",e[e.FIXED=2]="FIXED",e[e.SIDE=3]="SIDE",e))(be||{}),Pe=(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))(Pe||{}),Et=(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))(Et||{}),It=(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))(It||{}),At=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.ALL=1]="ALL",e[e.OTHER=2]="OTHER",e))(At||{}),Ue=(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))(Ue||{}),Ee=(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))(Ee||{}),Ct=(e=>(e[e.LEFT=1]="LEFT",e[e.CENTER=2]="CENTER",e[e.RIGHT=3]="RIGHT",e))(Ct||{}),Tt=(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))(Tt||{}),Dt=(e=>(e[e.UNSET=-1]="UNSET",e[e.OFF=0]="OFF",e[e.ON=1]="ON",e))(Dt||{}),Nt=(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))(Nt||{}),vt=(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))(vt||{}),wt=(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))(wt||{}),Rt=(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))(Rt||{}),Lt=(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))(Lt||{}),We=(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))(We||{}),bt=(e=>(e[e.NONE=0]="NONE",e[e.DRIVER=1]="DRIVER",e[e.ONFOOT=2]="ONFOOT",e))(bt||{}),Ot=(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))(Ot||{}),N=(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))(N||{}),P=(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))(P||{}),Oe=(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))(Oe||{}),Ge=(e=>(e[e.GLOBAL=0]="GLOBAL",e[e.PLAYER=1]="PLAYER",e[e.DYNAMIC=2]="DYNAMIC",e))(Ge||{}),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||{}),Gt=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHt=2]="RIGHt",e))(Gt||{}),je=(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))(je||{});const a_=e=>samp.callNative("DestroyDynamic3DTextLabel","i",e),i_=e=>!!samp.callNative("IsValidDynamic3DTextLabel","i",e),n_=(e,t,a,i,n,r=!0,s=100,l=0,o=-1,d=-1,c=N.ACTOR_SD,h=-1,p=0)=>samp.callNative("CreateDynamicActor","iffffifiiifii",e,t,a,i,n,r,s,l,o,d,c,h,p),r_=e=>samp.callNative("DestroyDynamicActor","i",e),s_=e=>!!samp.callNative("IsValidDynamicActor","i",e),l_=(e,t)=>!!samp.callNative("IsDynamicActorStreamedIn","ii",e,t),o_=e=>samp.callNative("GetDynamicActorVirtualWorld","i",e),d_=(e,t)=>samp.callNative("SetDynamicActorVirtualWorld","ii",e,t),c_=(e,t,a,i,n,r,s,l,o)=>samp.callNative("ApplyDynamicActorAnimation","issfiiiii",e,t,a,i,n,r,s,l,o),__=e=>samp.callNative("ClearDynamicActorAnimations","i",e),h_=e=>{const[t,a]=samp.callNative("GetDynamicActorFacingAngle","iF",e);return{angle:t,ret:a}},u_=(e,t)=>samp.callNative("SetDynamicActorFacingAngle","if",e,t),m_=e=>{const[t,a,i,n]=samp.callNative("GetDynamicActorPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},p_=(e,t,a,i)=>samp.callNative("SetDynamicActorPos","ifff",e,t,a,i),f_=e=>{const[t,a]=samp.callNative("GetDynamicActorHealth","iF",e);return{health:t,ret:a}},g_=(e,t)=>samp.callNative("SetDynamicActorHealth","if",e,t),S_=(e,t=!0)=>samp.callNative("SetDynamicActorInvulnerable","ii",e,t),y_=e=>!!samp.callNative("IsDynamicActorInvulnerable","i",e),P_=e=>samp.callNative("GetPlayerTargetDynamicActor","i",e),E_=e=>samp.callNative("GetPlayerCameraTargetDynActor","i",e),I_=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}},A_=(e,t,a,i=-1,n=-1,r=-1)=>samp.callNative("CreateDynamicCircle","fffiii",e,t,a,i,n,r),C_=(e,t,a,i,n,r=-1,s=-1,l=-1)=>samp.callNative("CreateDynamicCylinder","fffffiii",e,t,a,i,n,r,s,l),T_=(e,t,a,i,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicSphere","ffffiii",e,t,a,i,n,r,s),D_=(e,t,a,i,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicRectangle","ffffiii",e,t,a,i,n,r,s),N_=(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),v_=(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),w_=e=>samp.callNative("DestroyDynamicArea","i",e),R_=e=>!!samp.callNative("IsValidDynamicArea","i",e),L_=e=>samp.callNative("GetDynamicAreaType","i",e),b_=e=>{const[t,a]=samp.callNative("GetDynamicPolygonPoints","iAi",e,Ft(e));return{points:t,ret:a}},Ft=e=>samp.callNative("GetDynamicPolygonNumberPoints","i",e),O_=(e,t,a=!1)=>!!samp.callNative("IsPlayerInDynamicArea","iii",e,t,a),G_=(e,t=!1)=>!!samp.callNative("IsPlayerInAnyDynamicArea","ii",e,t),F_=(e,t=!1)=>!!samp.callNative("IsAnyPlayerInDynamicArea","ii",e,t),B_=(e=!1)=>!!samp.callNative("IsAnyPlayerInAnyDynamicArea","i",e),x_=e=>{const[t,a]=samp.callNative("GetPlayerDynamicAreas","iAi",e,Bt(e));return{areas:t,ret:a}},Bt=e=>samp.callNative("GetPlayerNumberDynamicAreas","i",e),k_=(e,t,a,i)=>!!samp.callNative("IsPointInDynamicArea","ifff",e,t,a,i),M_=(e,t,a)=>!!samp.callNative("IsPointInAnyDynamicArea","fff",e,t,a),H_=(e,t,a,i,n,r,s)=>!!samp.callNative("IsLineInDynamicArea","iffffff",e,t,a,i,n,r,s),V_=(e,t,a,i,n,r)=>!!samp.callNative("IsLineInAnyDynamicArea","ffffff",e,t,a,i,n,r),U_=(e,t,a)=>{const[i,n]=samp.callNative("GetDynamicAreasForPoint","fffAi",e,t,a,xt(e,t,a));return{areas:i,ret:n}},xt=(e,t,a)=>samp.callNative("GetNumberDynamicAreasForPoint","fff",e,t,a),W_=(e,t,a,i,n,r)=>{const[s,l]=samp.callNative("GetDynamicAreasForLine","ffffffAi",e,t,a,i,n,r,kt(e,t,a,i,n,r));return{areas:s,ret:l}},kt=(e,t,a,i,n,r)=>samp.callNative("GetNumberDynamicAreasForLine","ffffff",e,t,a,i,n,r),j_=(e,t,a=Ge.DYNAMIC,i=65535,n=0,r=0,s=0)=>samp.callNative("AttachDynamicAreaToObject","iiiifff",e,t,a,i,n,r,s),K_=(e,t,a=0,i=0,n=0)=>samp.callNative("AttachDynamicAreaToPlayer","iifff",e,t,a,i,n),Z_=(e,t,a=0,i=0,n=0)=>samp.callNative("AttachDynamicAreaToVehicle","iifff",e,t,a,i,n),X_=(e,t)=>samp.callNative("ToggleDynAreaSpectateMode","ii",e,t),Y_=e=>!!samp.callNative("IsToggleDynAreaSpectateMode","i",e),z_=(e,t,a,i,n=-1,r=-1,s=-1,l=N.CP_SD,o=-1,d=0)=>samp.callNative("CreateDynamicCP","ffffiiifii",e,t,a,i,n,r,s,l,o,d),Mt=e=>samp.callNative("DestroyDynamicCP","i",e),Ht=e=>!!samp.callNative("IsValidDynamicCP","i",e),$_=(e,t,a)=>samp.callNative("TogglePlayerDynamicCP","iii",e,t,a),J_=(e,t)=>samp.callNative("TogglePlayerAllDynamicCPs","ii",e,t),Q_=(e,t)=>!!samp.callNative("IsPlayerInDynamicCP","ii",e,t),q_=e=>samp.callNative("GetPlayerVisibleDynamicCP","i",e),eh=(e,t,a)=>{const[i,n]=samp.callNative("Streamer_GetFloatData","iiiF",e,t,a);return{val:i,ret:n}},th=(e,t,a,i)=>samp.callNative("Streamer_SetFloatData","iiif",e,t,a,i),ah=(e,t,a)=>samp.callNative("Streamer_GetIntData","iii",e,t,a),ih=(e,t,a,i)=>samp.callNative("Streamer_SetIntData","iiii",e,t,a,i),nh=(e,t,a)=>{const[i,n]=samp.callNative("Streamer_GetArrayData","iiiAi",e,t,a,Vt(e,t,a));return{arrayData:i,ret:n}},rh=(e,t,a,i)=>samp.callNative("Streamer_SetArrayData","iiiai",e,t,a,i,i.length),sh=(e,t,a,i)=>!!samp.callNative("Streamer_IsInArrayData","iiii",e,t,a,i),lh=(e,t,a,i)=>samp.callNative("Streamer_AppendArrayData","iiii",e,t,a,i),oh=(e,t,a,i)=>samp.callNative("Streamer_RemoveArrayData","iiii",e,t,a,i),Vt=(e,t,a)=>samp.callNative("Streamer_GetArrayDataLength","iii",e,t,a),dh=e=>samp.callNative("Streamer_GetUpperBound","i",e);var Fe=(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))(Fe||{});const ch=(e,t,a,i,n,r=-1,s=-1,l=-1,o=N.MAP_ICON_SD,d=0,c=-1,h=0)=>samp.callNative("CreateDynamicMapIcon","fffiiiiifiii",e,t,a,i,n,r,s,l,o,d,c,h),_h=e=>samp.callNative("DestroyDynamicMapIcon","i",e),hh=e=>!!samp.callNative("IsValidDynamicMapIcon","i",e),uh=(e,t,a,i,n,r,s,l=N.OBJECT_SD,o=N.OBJECT_DD,d=[-1],c=[-1],h=[-1],p=[-1],g=0)=>samp.callNative("CreateDynamicObjectEx","iffffffffaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,h,p,g,d.length,c.length,h.length,p.length),mh=(e,t,a,i,n,r=N.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),ph=(e,t,a,i,n=N.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),fh=(e,t,a,i,n,r,s,l,o=N.RACE_CP_SD,d=[-1],c=[-1],h=[-1],p=[-1],g=0)=>samp.callNative("CreateDynamicRaceCPEx","iffffffffaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,h,p,g,d.length,c.length,h.length,p.length),gh=(e,t,a,i,n,r=Fe.LOCAL,s=N.MAP_ICON_SD,l=[-1],o=[-1],d=[-1],c=[-1],h=0)=>samp.callNative("CreateDynamicMapIconEx","fffiiifaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,h,l.length,o.length,d.length,c.length),Sh=(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),yh=(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),Ph=(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),Eh=(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),Ih=(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),Ah=(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),Ch=(e,t,a,i,n,r=!0,s=100,l=N.ACTOR_SD,o=[0],d=[-1],c=[-1],h=[-1],p=0)=>samp.callNative("CreateDynamicActorEx","iffffiffaaaaiiiii",e,t,a,i,n,r,s,l,o,d,c,h,p,o.length,d.length,c.length,h.length),Th=(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}},Dh=(e,t,a,i)=>samp.callNative("Streamer_ToggleItem","iiii",e,t,a,i),Nh=(e,t,a)=>!!samp.callNative("Streamer_IsToggleItem","iii",e,t,a),vh=(e,t,a,i=[-1])=>samp.callNative("Streamer_ToggleAllItems","iiiai",e,t,a,i,i.length),wh=(e,t,a)=>samp.callNative("Streamer_GetItemInternalID","iii",e,t,a),Rh=(e,t,a)=>samp.callNative("Streamer_GetItemStreamerID","iii",e,t,a),Lh=(e,t,a)=>!!samp.callNative("Streamer_IsItemVisible","iii",e,t,a),bh=(e,t,a=1)=>samp.callNative("Streamer_DestroyAllVisibleItems","iii",e,t,a),Oh=(e,t,a=1)=>samp.callNative("Streamer_CountVisibleItems","iii",e,t,a),Gh=(e,t=1)=>samp.callNative("Streamer_DestroyAllItems","ii",e,t),Fh=(e,t=1)=>samp.callNative("Streamer_CountItems","ii",e,t),Bh=(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)},xh=(e,t,a=32)=>{const[i=[],n=0]=samp.callNative("Streamer_GetAllVisibleItems","iiAi",e,t,a);return i.slice(0,n)},kh=(e,t)=>{const[a,i,n,r]=samp.callNative("Streamer_GetItemPos","iiFFF",e,t);return{x:a,y:i,z:n,ret:r}},Mh=(e,t,a,i,n)=>samp.callNative("Streamer_SetItemPos","iifff",e,t,a,i,n),Hh=(e,t)=>{const[a,i,n,r]=samp.callNative("Streamer_GetItemOffset","iiFFF",e,t);return{x:a,y:i,z:n,ret:r}},Vh=(e,t,a,i,n)=>samp.callNative("Streamer_SetItemOffset","iifff",e,t,a,i,n),Uh=(e,t,a,i,n,r,s,l=-1,o=-1,d=-1,c=N.OBJECT_SD,h=N.OBJECT_DD,p=-1,g=0)=>samp.callNative("CreateDynamicObject","iffffffiiiffii",e,t,a,i,n,r,s,l,o,d,c,h,p,g),Wh=e=>samp.callNative("DestroyDynamicObject","i",e),jh=e=>!!samp.callNative("IsValidDynamicObject","i",e),Kh=e=>{const[t,a,i,n]=samp.callNative("GetDynamicObjectPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},Zh=(e,t,a,i)=>samp.callNative("SetDynamicObjectPos","ifff",e,t,a,i),Xh=e=>{const[t,a,i,n]=samp.callNative("GetDynamicObjectRot","iFFF",e);return{rx:t,ry:a,rz:i,ret:n}},Yh=(e,t,a,i)=>samp.callNative("SetDynamicObjectRot","ifff",e,t,a,i),zh=(e,t,a,i,n,r=-1e3,s=-1e3,l=-1e3)=>samp.callNative("MoveDynamicObject","ifffffff",e,t,a,i,n,r,s,l),$h=e=>samp.callNative("StopDynamicObject","i",e),Jh=e=>!!samp.callNative("IsDynamicObjectMoving","i",e),Qh=(e,t)=>samp.callNative("AttachCameraToDynamicObject","ii",e,t),qh=(e,t,a,i,n,r,s,l,o=!0)=>samp.callNative("AttachDynamicObjectToObject","iiffffffi",e,t,a,i,n,r,s,l,o),eu=(e,t,a,i,n,r,s,l)=>samp.callNative("AttachDynamicObjectToPlayer","iiffffff",e,t,a,i,n,r,s,l),tu=(e,t,a,i,n,r,s,l)=>samp.callNative("AttachDynamicObjectToVehicle","iiffffff",e,t,a,i,n,r,s,l),au=(e,t)=>samp.callNative("EditDynamicObject","ii",e,t),iu=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialUsed","ii",e,t),nu=(e,t)=>samp.callNative("RemoveDynamicObjectMaterial","ii",e,t),ru=(e,t,a,i,n,r=0)=>samp.callNative("SetDynamicObjectMaterial","iiissi",e,t,a,i,n,r),su=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialTextUsed","ii",e,t),lu=(e,t)=>samp.callNative("RemoveDynamicObjectMaterialText","ii",e,t),ou=e=>samp.callNative("GetPlayerCameraTargetDynObject","i",e),du=e=>!!samp.callNative("SetDynamicObjectNoCameraCol","i",e),cu=e=>!!samp.callNative("GetDynamicObjectNoCameraCol","i",e),_u=(e,t,a,i,n,r=-1,s=-1,l=-1,o=N.PICKUP_SD,d=-1,c=0)=>samp.callNative("CreateDynamicPickup","iifffiiifii",e,t,a,i,n,r,s,l,o,d,c),hu=e=>!!samp.callNative("DestroyDynamicPickup","i",e),uu=e=>!!samp.callNative("IsValidDynamicPickup","i",e),mu=(e,t,a,i,n,r,s,l,o=-1,d=-1,c=-1,h=N.RACE_CP_SD,p=-1,g=0)=>samp.callNative("CreateDynamicRaceCP","ifffffffiiifii",e,t,a,i,n,r,s,l,o,d,c,h,p,g),pu=(e,t,a)=>samp.callNative("TogglePlayerDynamicRaceCP","iii",e,t,a),fu=(e,t)=>samp.callNative("TogglePlayerAllDynamicRaceCPs","ii",e,t),gu=(e,t)=>!!samp.callNative("IsPlayerInDynamicRaceCP","ii",e,t),Su=e=>samp.callNative("GetPlayerVisibleDynamicRaceCP","i",e),yu=()=>samp.callNative("Streamer_GetTickRate",""),Pu=(e=50)=>samp.callNative("Streamer_SetTickRate","i",e),Eu=e=>samp.callNative("Streamer_GetPlayerTickRate","i",e),Iu=(e,t=50)=>samp.callNative("Streamer_SetPlayerTickRate","ii",e,t),Au=(e=!1)=>samp.callNative("Streamer_ToggleChunkStream","i",e),Cu=()=>!!samp.callNative("Streamer_IsToggleChunkStream",""),Ut=(e,t=-1)=>samp.callNative("Streamer_GetChunkTickRate","ii",e,t),Wt=(e,t,a=-1)=>samp.callNative("Streamer_SetChunkTickRate","iii",e,t,a),Tu=e=>samp.callNative("Streamer_GetChunkSize","i",e),Du=(e,t)=>samp.callNative("Streamer_SetChunkSize","ii",e,t),Nu=e=>samp.callNative("Streamer_GetMaxItems","i",e),vu=(e,t)=>samp.callNative("Streamer_SetMaxItems","ii",e,t),jt=(e,t=-1)=>samp.callNative("Streamer_GetVisibleItems","ii",e,t),Kt=(e,t,a=-1)=>samp.callNative("Streamer_SetVisibleItems","iii",e,t,a),Zt=(e,t=-1)=>{const[a,i]=samp.callNative("Streamer_GetRadiusMultiplier","iFi",e,t);return{multiplier:a,ret:i}},Xt=(e,t,a=-1)=>samp.callNative("Streamer_SetRadiusMultiplier","ifi",e,t,a),wu=()=>{const[e,t]=samp.callNative("Streamer_GetTypePriority","Ai",Oe.MAX_TYPES);return{priority:e,ret:t}},Ru=e=>samp.callNative("Streamer_SetTypePriority","ai",e,Oe.MAX_TYPES),Lu=()=>{const[e,t]=samp.callNative("Streamer_GetCellDistance","F");return{distance:e,ret:t}},bu=(e=600)=>samp.callNative("Streamer_SetCellDistance","f",e),Ou=()=>{const[e,t]=samp.callNative("Streamer_GetCellSize","F");return{size:e,ret:t}},Gu=(e=300)=>samp.callNative("Streamer_SetCellSize","f",e),Fu=(e,t,a)=>samp.callNative("Streamer_ToggleItemStatic","iii",e,t,a),Bu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemStatic","ii",e,t),xu=(e,t,a)=>samp.callNative("Streamer_ToggleItemInvAreas","iii",e,t,a),ku=(e,t)=>!!samp.callNative("Streamer_IsToggleItemInvAreas","ii",e,t),Mu=(e,t,a)=>samp.callNative("Streamer_ToggleItemCallbacks","iii",e,t,a),Hu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemCallbacks","ii",e,t),Vu=e=>samp.callNative("Streamer_ToggleErrorCallback","i",e),Uu=()=>!!samp.callNative("Streamer_IsToggleErrorCallback",""),Wu=e=>samp.callNative("Streamer_AmxUnloadDestroyItems","i",e),ju=()=>samp.callNative("Streamer_ProcessActiveItems",""),Ku=(e,t)=>samp.callNative("Streamer_ToggleIdleUpdate","ii",e,t),Zu=e=>!!samp.callNative("Streamer_IsToggleIdleUpdate","i",e),Xu=(e,t)=>samp.callNative("Streamer_ToggleCameraUpdate","ii",e,t),Yu=e=>!!samp.callNative("Streamer_IsToggleCameraUpdate","i",e),zu=(e,t,a)=>samp.callNative("Streamer_ToggleItemUpdate","iii",e,t,a),$u=(e,t)=>!!samp.callNative("Streamer_IsToggleItemUpdate","ii",e,t),Ju=()=>{const[e,t]=samp.callNative("Streamer_GetLastUpdateTime","F");return{time:e,ret:t}},Qu=(e,t=-1)=>samp.callNative("Streamer_Update","ii",e,t),qu=(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),te=Symbol(),J=new Map,j=new Map,Ie=new Map,Ae=new Map,Ce=new Map,Be=new Map,Te=new Map,De=new Map,K=new Map,ue=new Map,Q=new Map,q=new Map,ae=new Map,ie=new Map,me=new Map,ne=new Map,[Yt]=u({name:"OnGameModeInit"}),[zt]=u({name:"OnGameModeExit"}),[em]=u({name:"OnIncomingConnection",defaultValue:!1,beforeEach(e,t,a){return{playerId:e,ipAddress:t,port:a}}}),[tm]=u({name:"OnRconCommandI18n",identifier:"ai",defaultValue:!1,beforeEach(e){return{buffer:e,cmd:E.decodeFromBuf(e)}}}),[am]=u({name:"OnRconLoginAttemptI18n",identifier:"aiaii",beforeEach(e,t,a){return{ip:E.decodeFromBuf(e),password:E.decodeFromBuf(t),success:!!a,ipBuffer:e,passwordBuffer:t}}}),re=[],pe=[],Ke=new Map,Ze=async e=>{try{return await new Promise((t,a)=>{const i=re.findIndex(l=>l.name===e);if(i===-1)return;const n=re[i];function r(l){l.length&&Ke.set(e,l),re.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}`)}},
|
|
4
|
-
${t}`)}},im=async e=>{await Xe(e),await Ze(e)};Yt(async({next:e})=>{const t=re.map(a=>a.name);for(const a of t)await Ze(a);return e()}),zt(async({next:e})=>{const t=pe.map(a=>a.name);for(const a of t)await Xe(a);return e()});const nm=function(e,...t){if(re.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),re.push(e)},se=(e,t)=>{const a=t.replace("-","")==="utf8"?e:E.encodeToBuf(e,t);return[a instanceof Array?"a":"s",a]},$t=(e,t,a)=>{const i=se(a,e.charset);return samp.callNative("SendClientMessage",`ii${i[0]}`,e.id,I(t),i[1])},rm=(e,t,a)=>(e.forEach(i=>$t(i,t,a)),1),Jt=(e,t,a)=>{const i=se(a,e.charset);return samp.callNative("SendPlayerMessageToPlayer",`ii${i[0]}`,e.id,t,i[1])},sm=(e,t,a)=>(e.forEach(i=>{Jt(i,t,a)}),1),lm=(e,t,a)=>{const{charset:i}=e,{style:n,caption:r,info:s,button1:l,button2:o}=a,[d,c]=se(r||"",i),[,h]=se(s||"",i),[,p]=se(l||"",i),[,g]=se(o||"",i);return!!samp.callNative("ShowPlayerDialog",`iii${d.repeat(4)}`,e.id,t,n,c,h,p,g)},om=e=>{const[t,a]=samp.callNative("GetPlayerName","iAi",e.id,H.MAX_PLAYER_NAME);return{name:E.decodeFromBuf(E.getValidStr(t),e.charset),ret:a}},dm=(e,t)=>samp.callNative("SetPlayerName","ia",e.id,E.encodeToBuf(t,e.charset)),cm=(e,t,a)=>{const i=E.encodeToBuf(t,a);return samp.callNative("BanEx","ia",e,i)},_m=(e,t="utf8")=>{const[a,i]=se(e,t);return samp.callNative("SendRconCommand",a,i)},hm=(e,t,a,i,n,r,s,l,o,d,c,h,p,g,f,y)=>{const w=E.encodeToBuf(t,e);return samp.callNative("CreateDynamic3DTextLabel","aiffffiiiiiifii",w,a,i,n,r,s,l,o,d,c,h,p,g,f,y)},um=(e,t,a,i,n,r,s,l,o,d,c,h,p,g,f,y)=>{const w=E.encodeToBuf(e,y);return samp.callNative("CreateDynamic3DTextLabelEx","aiffffiiifaaaaiiiii",w,t,a,i,n,r,s,l,o,d,c,h,p,g,f,c.length,h.length,p.length,g.length)},mm=(e,t,a,i)=>{const n=E.encodeToBuf(a,i);return samp.callNative("UpdateDynamic3DTextLabelText","iia",e,t,n)},pm=(e,t)=>{const[a,i]=samp.callNative("GetDynamic3DTextLabelText","iAi",e,1024);return{text:E.decodeFromBuf(E.getValidStr(a),t),ret:i}},fm=(e,t,a,i,n,r,s,l,o,d,c)=>{const h=E.encodeToBuf(i,e),p=E.encodeToBuf(r,e);return samp.callNative("SetDynamicObjectMaterialText","iiaiaiiiii",t,a,h,n,p,s,l,o,d,c)},gm=(e,t,a="utf8")=>{const[i,n,r,s,l]=samp.callNative("GetDynamicObjectMaterial","iiIAAIii",e,t,64,64);return{modelId:i,txdName:E.decodeFromBuf(E.getValidStr(n),a),textureName:E.decodeFromBuf(E.getValidStr(r),a),materialColor:s,ret:l}},Sm=(e,t,a)=>{const[i,n,r,s,l,o,d,c,h]=samp.callNative("GetDynamicObjectMaterialText","iiAIAIIIIIii",e,t,2048,32),p=E.decodeFromBuf(i,a),g=E.decodeFromBuf(r,a);return{text:p,materialSize:n,fontFace:g,fontSize:s,bold:l,fontColor:o,backColor:d,textAlignment:c,ret:h}},ym=(e,t,a,i,n,r)=>{const s=E.encodeToBuf(t,r);return!!samp.callNative("SetPlayerChatBubble","iaifi",e,s,I(a),i,n)},Z=new Uint32Array(65536),Pm=(e,t)=>{const a=e.length,i=t.length,n=1<<a-1;let r=-1,s=0,l=a,o=a;for(;o--;)Z[e.charCodeAt(o)]|=1<<o;for(o=0;o<i;o++){let d=Z[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--;)Z[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++)Z[e.charCodeAt(T)]|=1<<T;for(let T=0;T<a;T++){const $=Z[t.charCodeAt(T)],U=r[T/32|0]>>>T&1,M=n[T/32|0]>>>T&1,et=$|f,tt=(($|M)&y)+y^y|$|M;let ge=f|~(tt|y),Re=y&tt;ge>>>31^U&&(r[T/32|0]^=1<<T),Re>>>31^M&&(n[T/32|0]^=1<<T),ge=ge<<1|U,Re=Re<<1|M,y=Re|~(et|ge),f=ge&et}for(let T=w;T<O;T++)Z[e.charCodeAt(T)]=0}let d=0,c=-1;const h=o*32,p=Math.min(32,i-h)+h;for(let f=h;f<p;f++)Z[e.charCodeAt(f)]|=1<<f;let g=i;for(let f=0;f<a;f++){const y=Z[t.charCodeAt(f)],w=r[f/32|0]>>>f&1,O=n[f/32|0]>>>f&1,T=y|d,$=((y|O)&c)+c^c|y|O;let U=d|~($|c),M=c&$;g+=U>>>i-1&1,g-=M>>>i-1&1,U>>>31^w&&(r[f/32|0]^=1<<f),M>>>31^O&&(n[f/32|0]^=1<<f),U=U<<1|w,M=M<<1|O,c=M|~(T|U),d=U&T}for(let f=h;f<p;f++)Z[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?Pm(e,t):Em(e,t)},Im=(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]},le=new Map,oe=new Map,qt=/[^/\s]+/gi,Ne={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"}},[Am,Cm]=u({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]=u({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}}}),[Nm,ve]=u({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=Im(i,[...le.keys(),...oe.keys()]),h=Qt(i,c);return{suggestion:c,distance:h}}}}}),[vm,wm]=u({name:"OnPlayerCommandTextI18n",identifier:"iai",defaultValue:!1,beforeEach(e,t){const a=J.get(e);let i=t,n="";return typeof t=="string"?(n=t,i=E.encodeToBuf(n,"utf-8")):n=E.decodeFromBuf(t,a.charset),{player:a,buffer:i,cmdText:n}}}),[Rm,Lm]=u({name:"OnPlayerCommandTextRaw",isNative:!1,defaultValue:!1,beforeEach(e,t,a){return{player:e,buffer:t,cmdText:a}}});function bm(e){const t=[];let a="";for(let i=0;i<e.length;i++)a+=e[i]+" ",t.push(a.trimEnd());return t.reverse()}vm(({player:e,buffer:t,cmdText:a,next:i})=>{const n=Lm(e,t,a);if(n)return n;const r=a.match(qt),s=bm(r),l=s.find(y=>le.has(y)),o=s.map(y=>y.toLowerCase()).find(y=>oe.has(y)),d=!!l,c=!!o,h=r.join(" ");let p=[];const g=[[l,le,!0],[o,oe,!1]],f=[h,a,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 ve(e,Ne.NOT_EXIST,...f);try{if(!Cm(e,...f))return ve(e,Ne.RECEIVED_REJECTED,...f)}catch(y){const w=typeof y=="object"?y:{error:y};return ve(e,{...Ne.RECEIVED_THROW,...w},...f)}for(const[y,w,O]of g){if(!y)continue;const T=w.get(y),[,$]=T;if(!$(e,y,p,a,t,O))return ve(e,Ne.REJECTED,...f)}return Dm(e,h,a,t,l,o,d,c,p)?(i(),!0):ve(e,Ne.PERFORMED,...f)});function Om(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(qt));if(l)return console.log(`error command ${l} format`),()=>{};const o=i?le:oe,d=s.map(c=>{const h=c.replaceAll("/",""),p=i?h:h.toLowerCase();if(!o.has(p)){const f=u({name:i?"$"+p:p,isNative:!1,beforeEach:Om});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(a=>{let i=a.replaceAll("/","");le.has(i)&&(F.has(i)&&F.delete(i),le.has(i)&&le.delete(i)),i=i.toLowerCase(),oe.has(i)&&(F.has(i)&&F.delete(i),oe.has(i)&&oe.delete(i))})}static enableCaseSensitive(){x.caseSensitive=!0}static disableCaseSensitive(){x.caseSensitive=!1}static isCaseSensitive(){return x.caseSensitive}static simulate(t,a){return wm(t.id,a)}}class L{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static onInit=Yt;static onExit=zt;static onIncomingConnection=em;static onRconCommand=tm;static onRconLoginAttempt=am;static use(t,...a){return nm(t,...a),this}static loadUseScript=Ze;static reloadUseScript=im;static unloadUseScript=Xe;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 Ja(t)}static setWorldTime(t){if(t<0||t>23)throw new Error("[GameMode]: The valid hour value is only 0 to 23");return Ya(t)}static getWorldTime=za;static setTeamCount=yi;static sendRconCommand=_m;static addPlayerClass=Pi;static addPlayerClassEx=Ei;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 ei(t,a,i,n,r)}static manualVehicleEngineAndLights=yl;static blockIpAddress=Hi;static unBlockIpAddress=Vi;static getServerTickRate=di;static addSimpleModel(t,a,i,n,r){return this.checkSimpleModel(t,a,i,n,r)?Zc(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)?Xc(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=lt;static getCustomModePath=t_;static getConsoleVarAsString(t,a="utf8"){const{consoleVarBuf:i,ret:n}=Oa(t);return{consoleVar:E.decodeFromBuf(E.getValidStr(i),a),ret:n}}static getRestartTime=Ha;static setRestartTime=Ma;static allowAdminTeleport=Na;static isAdminTeleportAllowed=va;static allowInteriorWeapons=wa;static areInteriorWeaponsAllowed=Ra;static areAllAnimationsEnabled=La;static enableAllAnimations=ba;static enableStuntBonusForAll=_i;static enableVehicleFriendlyFire=$a;static enableZoneNames=ti;static disableInteriorEnterExits=ii;static setGameModeText=Ka;static getGravity=Qa;static setGravity=qa;static showNameTags=Za;static disableNameTagLOS=ri;static usePlayerPedAnims=ai;static showPlayerMarkers=Xa;static limitPlayerMarkerRadius=li;static limitGlobalChatRadius=si;static setNameTagDrawDistance=ni;static findModelFileNameFromCRC=zc;static findTextureFileNameFromCRC=$c;static getWeaponName=pi;static setObjectsDefaultCameraCollision=Kc;static vectorSize=He;static clearBanList=ji;static isBanned=Ki;static isValidNickName=Pa;static allowNickNameCharacter=Ea;static isNickNameCharacterAllowed=Ia;static addServerRule=Aa;static setServerRule=Ca;static isValidServerRule=Ta;static removeServerRule=Da;static getWeaponSlot=mi;static getAvailableClasses=fi;static getPlayerClass=gi;static editPlayerClass=Si;static toggleChatTextReplacement=hi;static chatTextReplacementToggled=ui;static getConsoleVarAsInt=Ga;static getConsoleVarAsBool=Fa;static getWeather=Ba;static getServerRuleFlag=xa;static setServerRuleFlags=ka}const A={skip:!1};L.onInit(({next:e})=>(A.skip=!1,e())),L.onExit(({next:e})=>(A.skip=!0,e()));class v{_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){const i=v.getInstance(a);if(i)return i}return Be.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: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,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(){const[t,a]=samp.callNative("NPC_GetVirtualWorld","iI",this._id);return{virtualWorld:t,ret:a}}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","ifffif",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","ii",this._id)}setKeys(t,a,i){return samp.callNative("NPC_SetKeys","iiii",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,h){return samp.callNative("NPC_Shoot","iiiffffffii",this._id,t,a,i,n,r,s,l,o,d,c,h),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,h){return samp.callNative("NPC_AimAtPlayer","iiiiiffffffi",this._id,t.id,a,i,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,a){return samp.callNative("NPC_SetWeaponAccuracy","iif",this._id,t,a),this}getWeaponAccuracy(t){return samp.callNativeFloat("NPC_GetWeaponAccuracy","ii",this._id,t)}enterVehicle(t,a,i){return samp.callNative("NPC_EnterVehicle","iiii",this._id,t,a,i),this}exitVehicle(){return samp.callNative("NPC_ExitVehicle","i",this._id),this}static connect=oi;static startRecordingPlayerData(t,a,i){if(t.isRecording)throw new Error("[NpcFunc]: It should be stopped before recording");$r(t.id,a,i),t.isRecording=!0}static stopRecordingPlayerData(t){if(!t.isRecording)throw new Error("[NpcFunc]: It should be started before stop");Jr(t.id),t.isRecording=!1}static startRecordingPlayback(t,a){if(v.recordStatus>=V.start)throw new Error("[NpcFunc]: The current status cannot be replayed");Ts(t,a),v.recordStatus=V.start}static stopRecordingPlayback(){if(v.recordStatus<V.start)throw new Error("[NpcFunc]: The current status cannot be stopped");Ds(),v.recordStatus=V.none}static pauseRecordingPlayback(){if(v.recordStatus!==V.start)throw new Error("[NpcFunc]: The current status cannot be paused");Ns(),v.recordStatus=V.pause}static resumeRecordingPlayback(){if(v.recordStatus!==V.pause)throw new Error("[NpcFunc]: The current status cannot be paused");vs(),v.recordStatus=V.start}static isValid(t){return!!samp.callNative("NPC_IsValid","i",t)}static getInstance(t){return Be.get(t)}static getInstances(){return[...Be.values()]}}const ea=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}]]]),Ye=e=>{const t=ea.get(e.toUpperCase());return t===void 0?!1:t},ze=(e,t)=>{const a=Ye(e);if(a)return t==="null"?!0:a.some(i=>i.n===t)},Gm=(e,t)=>{const a=Ye(e);if(a)return a.find(i=>i.n===t)?.d},[ta]=u({name:"OnClientCheckResponse",beforeEach(e,t,a,i){return{player:m.getInstance(e),actionId:t,memAddr:a,data:i}}}),[Fm,Bm]=u({name:"OnPlayerLocaleChange",isNative:!1,beforeEach(e,t,a){return{player:e,newLocale:t,oldLocale:a}}}),[xm,km]=u({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}[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 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 $t(this,t,a)}static sendClientMessageToAll(t,a){rm(m.getInstances(),t,a)}sendMessageToPlayer(t,a){return Jt(t,this.id,a)}sendMessageToAll(t){return sm(m.getInstances(),this.id,t)}isNpc(){return Dn(this.id)}getFps(){return this.lastFps}getDrunkLevel(){return zn(this.id)}setDrunkLevel(t){if(t<0||t>5e4)throw new Error("[Player]: player's drunk level ranges from 0 to 50000");return $n(this.id,t)}allowTeleport(t){return Sn(this.id,t)}isTeleportAllowed(){return yn(this.id)}enableCameraTarget(t){return ps(this.id,t)}enableStuntBonus(t){return Xr(this.id,t)}getInterior(){return Bn(this.id)}setInterior(t){return Fn(this.id,t)}showNameTag(t,a){return os(this.id,t.id,a)}setColor(t){return Jn(this.id,t)}getColor(){return Qn(this.id)}setMarker(t,a){ss(this.id,t.id,a)}getMarker(t){return ls(this.id,t.id)}resetMoney(){return sr(this.id)}getMoney(){return lr(this.id)}giveMoney(t){return rr(this.id,t)}resetWeapons(){return ar(this.id)}spawn(){return Ai(this.id)}setHealth(t){return xn(this.id,t)}getHealth(){return kn(this.id)}toggleClock(t){return mr(this.id,t)}toggleControllable(t){return xr(this.id,t)}toggleSpectating(t){return Qr(this.id,t)}spectatePlayer(t,a=be.NORMAL){return qr(this.id,t.id,a)}spectateVehicle(t,a=be.NORMAL){return es(this.id,t.id,a)}forceClassSelection(){return fr(this.id)}kick(){return Bi(this.id)}ban(){return xi(this.id)}banEx(t,a){return cm(this.id,t,a)}isAdmin(){return Gi(this.id)}isInRangeOfPoint(t,a,i,n){return bn(this.id,t,a,i,n)}isStreamedIn(t){return Gn(this.id,t.id)}setSkin(t,a=!1){return!a&&(t<0||t>311||t===74)||this.getHealth().health<=0||this.isInAnyVehicle()||this.getSpecialAction()===Ue.DUCK?!1:qn(this.id,t)}getSkin(){return er(this.id)}isInAnyVehicle(){return is(this.id)}getSpecialAction(){return Ur(this.id)}setSpecialAction(t){return Wr(this.id,t)}setScore(t){return Xn(this.id,t)}getScore(){return Yn(this.id)}getPing(){return dr(this.id)||0}setPos(t,a,i){return Nn(this.id,t,a,i)}getPos(){return wn(this.id)}isSpectating(){return this.getState()===Pe.SPECTATING}isWasted(){return this.getState()===Pe.WASTED}getState(){return or(this.id)}getVersion(){return Yi(this.id)}setVirtualWorld(t){return Kr(this.id,t)}getVirtualWorld(){return Zr(this.id)}removeFromVehicle(){return Br(this.id)}setWantedLevel(t){if(t<0||t>6)throw new Error("[Player]: player's wanted level ranges from 0 to 6");return gr(this.id,t)}getWantedLevel(){return Sr(this.id)}setFacingAngle(t){return Rn(this.id,t)}getFacingAngle(){return Ln(this.id)}setWeather(t){if(t<0||t>255)throw new Error("[Player]: The valid weather value is only 0 to 255");return pr(this.id,t)}getWeather(){return Qi(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 hr(this.id,t,a)}getTime(){return ur(this.id)}removeBuilding(t,a,i,n,r){return Lr(this.id,t,a,i,n,r)}setTeam(t){t<0||t>D.NO_TEAM||Kn(this.id,t)}getTeam(){return Zn(this.id)}setSkillLevel(t,a){if(a<0||a>999)throw new Error("[Player]: The valid skill level is only 0 to 999");return Nr(this.id,t,a)}getName(){return om(this)}setName(t){return dm(this,t)}setVelocity(t,a,i){return Er(this.id,t,a,i)}getVelocity(){return Ir(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 _r(this.id)}getIp(){return Xi(this.id)}getFightingStyle(){return Pr(this.id)}setFightingStyle(t){return yr(this.id,t)}setArmour(t){return Mn(this.id,t)}getArmour(){return Hn(this.id)}setCameraBehind(){return _s(this.id)}setCameraPos(t,a,i){return ds(this.id,t,a,i)}setCameraLookAt(t,a,i,n=ye.CUT){return cs(this.id,t,a,i,n)}getCameraAspectRatio(){return Ss(this.id)}getCameraFrontVector(){return us(this.id)}getCameraMode(){return ms(this.id)}getCameraPos(){return hs(this.id)}getCameraTargetPlayer(){const t=gs(this.id);return m.getInstances().find(a=>a.id===t)}getCameraTargetVehicle(){const t=fs(this.id);return[...j.values()].find(a=>a.id===t)}getCameraZoom(){return ys(this.id)}playAudioStream(t,a=0,i=0,n=0,r=5){let s=!1;return(a!==0||i!==0||n!==0)&&(s=!0),Cr(this.id,t,a,i,n,r,s)}stopAudioStream(){return Tr(this.id)}playSound(t,a=0,i=0,n=0){return kr(this.id,t,a,i,n)}static getMaxPlayers(){return ja()}playCrimeReport(t,a){if(a<3||a>22)throw new Error("[Player]: Available crime ids range from 3 to 22");return Ar(this.id,t.id,a)}interpolateCameraPos(t,a,i,n,r,s,l,o=ye.CUT){return Ps(this.id,t,a,i,n,r,s,l,o)}interpolateCameraLookAt(t,a,i,n,r,s,l,o=ye.CUT){return Es(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 zr(this.id,t,a,i,n,r)}static isConnected(t){return ts(t)}isConnected(){return m.isConnected(this.id)}disableRemoteVehicleCollisions(t){return jr(this.id,t)}getVehicle(){if(!this.isInAnyVehicle())return;const t=Gr(this.id);return[...j.values()].find(a=>a.id===t)}getVehicleSeat(){return Fr(this.id)}getSurfingVehicle(){const t=vr(this.id);if(t!==D.VEHICLE_ID)return[...j.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(!ze(t,a))throw new Error(`[Player]: Invalid anim library or name ${t} ${a}`);return Mr(this.id,t,a,i,n,r,s,l,o,+d)}clearAnimations(t=!1){return Hr(this.id,t)}getAnimationIndex(){return Vr(this.id)}getAnimationName(t=this.getAnimationIndex()){const[a,i]=ci(t);return{index:t,animLib:a,animName:i}}setShopName(t){return Dr(this.id,t)}setPosFindZ(t,a,i){return vn(this.id,t,a,i)}setWorldBounds(t,a,i,n){return ns(this.id,t,a,i,n)}clearWorldBounds(){return rs(this.id)}setChatBubble(t,a,i,n,r=this.charset){return ym(this.id,t,a,i,n,r)}getDistanceFromPoint(t,a,i){return On(this.id,t,a,i)}getCustomSkin(){return Yr(this.id)}getTargetPlayer(){const t=jn(this.id);if(t!==D.PLAYER_ID)return m.getInstances().find(a=>a.id===t)}getLastShotVectors(){return br(this.id)}getWeapon(){return cr(this.id)}getWeaponData(t){return nr(this.id,t)}getWeaponState(){return Wn(this.id)}giveWeapon(t,a){return tr(this.id,t,a)}setAmmo(t,a){return Vn(this.id,t,a)}getAmmo(){return Un(this.id)}setArmedWeapon(t){return ir(this.id,t)}clearDeathMessage(){for(let t=0;t<5;t++)this.sendDeathMessageToPlayer(D.PLAYER_ID,D.PLAYER_ID,We.CONNECT)}sendDeathMessage(t,a){return Wa(t===D.PLAYER_ID?t:t.id,this.id,a)}sendDeathMessageToPlayer(t,a,i){return Cn(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,h,p){return t<0||t>D.NO_TEAM||a<0||a>311||a===74||o<0||c<0||p<0?!1:Ii(this.id,t,a,i,n,r,s,l,o,d,c,h,p)}redirectDownload(t){return Yc(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 h=null;const p=ta(({player:g,actionId:f,memAddr:y,data:w,next:O})=>(g!==this||(h&&(clearTimeout(h),h=null),s({actionId:f,memAddr:y,data:w})),O()));h=setTimeout(()=>{p(),l(o)},c),Wi(this.id,t,a,i,n)})}selectTextDraw(t){ec(this.id,t)}cancelSelectTextDraw(){tc(this.id)}beginObjectSelecting(){return Wc(this.id)}endObjectEditing(){return jc(this.id)}getSurfingObject(){const t=wr(this.id);if(t!==D.OBJECT_ID)return K.get(t)}getSurfingPlayerObject(){const t=Rr(this.id);if(t!==D.OBJECT_ID)return K.get(t)}isAttachedObjectSlotUsed(t){return e_(this.id,t)}editAttachedObject(t){return Uc(this.id,t)}setAttachedObject(t,a,i,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:Qc(this.id,t,a,i,n,r,s,l,o,d,c,h,p,g,f)}removeAttachedObject(t){return this.isAttachedObjectSlotUsed(t)?qc(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 zi(this.id,t)}isWidescreenToggled(){return $i(this.id)}getSpawnInfo(){return Ci(this.id)}getSkillLevel(t){return Ji(this.id,t)}isCheckpointActive(){return ho(this.id)}getCheckpoint(){return uo(this.id)}isRaceCheckpointActive(){return mo(this.id)}getRaceCheckpoint(){return po(this.id)}getWorldBounds(){return qi(this.id)}isInModShop(){return no(this.id)}getSirenState(){return ro(this.id)}getLandingGearState(){return so(this.id)}getHydraReactorAngle(){return lo(this.id)}getTrainSpeed(){return oo(this.id)}getZAim(){return en(this.id)}getSurfingOffsets(){return tn(this.id)}getRotationQuat(){return an(this.id)}getDialogID(){return nn(this.id)}getSpectateID(){return rn(this.id)}getSpectateType(){return sn(this.id)}getRawIp(){return Zi(this.id)}setGravity(t){return ln(this.id,t)}getGravity(){return on(this.id)}setAdmin(t){return Fi(this.id,t)}isSpawned(){return dn(this.id)}isControllable(){return cn(this.id)}isCameraTargetEnabled(){return _n(this.id)}toggleGhostMode(t){return hn(this.id,t)}getGhostMode(){return un(this.id)}getBuildingsRemoved(){return mn(this.id)}getAttachedObject(t){return Jc(this.id,t)}removeWeapon(t){return pn(this.id,t)}isUsingOfficialClient(){return gn(this.id)}allowWeapons(t){return Pn(this.id,t)}areWeaponsAllowed(){return En(this.id)}gpci(t=this.charset){return Ui(this.id,t)}isCuffed(){return Is(this.id)}isInDriveByMode(){return As(this.id)}isAndroid(){return this.isConnected()&&this[te].isAndroid}isPC(){return this.isConnected()&&!this[te].isAndroid}isUsingOmp(){return Cs(this.id)}simulateCommand(t){return x.simulate(this,t)}static getInstance(t){return J.get(t)}static getInstances(){return[...J.values()]}}const[aa]=u({name:"OnDialogResponseI18n",identifier:"iiiiai",defaultValue:!1,beforeEach(e,t,a,i,n){const r=m.getInstance(e),s=E.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:Ve.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),fn(t.id)}static __inject__ShowPlayerDialog=lm}const[ia]=u({name:"OnPlayerConnect",beforeEach(e){const t=new m(e);return J.set(e,t),R.close(t),{player:t}}}),[na]=u({name:"OnPlayerDisconnect",beforeEach(e,t){return{player:J.get(e),reason:t}},afterEach({player:e}){J.delete(e.id)}}),[ra]=u({name:"OnPlayerUpdate",beforeEach(e){return{player:m.getInstance(e)}}}),[Mm]=u({name:"OnPlayerTextI18n",identifier:"iai",beforeEach(e,t){const a=m.getInstance(e);return{player:a,text:E.decodeFromBuf(t,a.charset),buffer:t}}}),[Hm]=u({name:"OnPlayerEnterExitModShop",beforeEach(e,t,a){return{player:m.getInstance(e),enterExit:t,interior:a}}}),[Vm]=u({name:"OnPlayerClickMap",defaultValue:!1,beforeEach(e,t,a,i){return{player:m.getInstance(e),fX:t,fY:a,fZ:i}}}),[Um]=u({name:"OnPlayerClickPlayer",defaultValue:!1,beforeEach(e,t,a){return{player:m.getInstance(e),clickedPlayer:m.getInstance(t),source:a}}}),[Wm]=u({name:"OnPlayerDeath",beforeEach(e,t,a){return{player:m.getInstance(e),killer:m.getInstance(t)||D.PLAYER_ID,reason:a}}}),[jm]=u({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]=u({name:"OnPlayerKeyStateChange",beforeEach(e,t,a){return{player:m.getInstance(e),newKeys:t,oldKeys:a}}}),[Zm]=u({name:"OnPlayerRequestClass",beforeEach(e,t){return{player:m.getInstance(e),classId:t}}}),[Xm]=u({name:"OnPlayerRequestSpawn",beforeEach(e){return{player:m.getInstance(e)}}}),[Ym]=u({name:"OnPlayerSpawn",beforeEach(e){return{player:m.getInstance(e)}}}),[zm]=u({name:"OnPlayerStateChange",beforeEach(e,t,a){return{player:m.getInstance(e),newState:t,oldState:a}}}),[$m]=u({name:"OnPlayerSteamIn",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[Jm]=u({name:"OnPlayerSteamOut",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[Qm]=u({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]=u({name:"OnPlayerInteriorChange",beforeEach(e,t,a){return{player:m.getInstance(e),newInteriorId:t,oldInteriorId:a}}}),[ep]=u({name:"OnPlayerRequestDownload",beforeEach(e,t,a){return{player:m.getInstance(e),type:t,crc:a}}}),[tp]=u({name:"OnPlayerFinishedDownloading",beforeEach(e,t){return{player:m.getInstance(e),virtualWorld:t}}}),[ap]=u({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 we=null;const X=new Map,$e=new Map;function sa(e){if(!e.isConnected()){X.has(e)&&clearInterval(X.get(e));return}let t=$e.get(e)||1;if(t>=m.MAX_CHECK_ANDROID_DELAY){clearInterval(X.get(e)),Je(e,!0);return}e.sendClientCheck(72,0,0,2).then(({actionId:a})=>{a===72&&(e[te].isAndroid=!1,X.has(e)&&clearInterval(X.get(e)),Je(e,!1))}).catch(()=>{}),t++,$e.set(e,t)}const[ip,np]=u({name:"OnPlayerPause",isNative:!1,beforeEach(e,t){return{player:e,pausedAt:t}}}),[rp,sp]=u({name:"OnPlayerResume",isNative:!1,beforeEach(e,t,a,i){return{player:e,pausedAt:t,now:a,diff:i}}}),[lp,op]=u({name:"OnPlayerFpsUpdate",isNative:!1,beforeEach(e,t,a){return{player:e,newFps:t,oldFps:a}}}),[dp,Je]=u({name:"OnAndroidCheck",isNative:!1,beforeEach(e,t){return{player:e,result:t}}});ia(({player:e,next:t})=>{if(!we&&m.getInstances().length&&(we=setInterval(()=>{m.getInstances().filter(i=>{const n=i.getState()!==Pe.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[te].isAndroid=!1,t();if(m.SKIP_CHECK_ANDROID)return e[te].isAndroid=!e.isUsingOfficialClient(),Je(e,e[te].isAndroid),t();sa(e);const a=setInterval(()=>sa(e),1e3);return X.set(e,a),t()}),na(({player:e,next:t})=>(we&&m.getInstances().length<=1&&(clearInterval(we),we=null),X.has(e)&&(clearInterval(X.get(e)),X.delete(e),$e.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 Qe=Object.freeze({onConnect:ia,onDisconnect:na,onPause:ip,onResume:rp,onUpdate:ra,onText:Mm,onEnterExitModShop:Hm,onClickMap:Vm,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:Am,onCommandPerformed:Tm,onCommandError:Nm,onCommandText:x.on,offCommandText:x.off,onDialogResponse:aa,onLocaleChange:Fm,onCharsetChange:xm,onFpsUpdate:lp,onWeaponShot:ap,onAndroidCheck:dp,onCommandTextRaw:Rm});L.onExit(({next:e})=>(Be.clear(),e()));const[_p]=u({name:"OnNpcConnect",beforeEach(e){return{myPlayerId:e}}}),[hp]=u({name:"OnNpcDisconnect",beforeEach(e){return{reason:e}}}),[up]=u({name:"OnNpcModeInit"}),[mp]=u({name:"OnNpcModeExit"}),[pp]=u({name:"OnClientMessageI18n",identifier:"iai",beforeEach(e,t){return{color:e,buffer:t,string:E.decodeFromBuf(t)}}}),[fp]=u({name:"OnNPCFinishMove",beforeEach(e){return{npc:v.getInstance(e)}}}),[gp]=u({name:"OnNPCCreate",beforeEach(e){return{npc:v.getInstance(e)}}}),[Sp]=u({name:"OnNPCDestroy",beforeEach(e){return{npc:v.getInstance(e)}}}),[yp]=u({name:"OnNPCWeaponStateChange",beforeEach(e,t,a){return{npc:v.getInstance(e),newState:t,oldState:a}}}),[Pp]=u({name:"OnNPCTakeDamage",beforeEach(e,t,a,i,n){return{npc:v.getInstance(e),damager:m.getInstance(t),damage:a,weapon:i,bodyPart:n}}}),[Ep]=u({name:"OnNPCGiveDamage",beforeEach(e,t,a,i,n){return{npc:v.getInstance(e),damager:m.getInstance(t),damage:a,weapon:i,bodyPart:n}}}),[Ip]=u({name:"OnNPCDeath",beforeEach(e,t,a){return{npc:v.getInstance(e),killer:t,reason:a}}}),[Ap]=u({name:"OnNpcSpawn",beforeEach(e){return{npc:v.getInstance(e)}}}),[Cp]=u({name:"OnNpcRespawn",beforeEach(e){return{npc:v.getInstance(e)}}}),Tp=Object.freeze({onConnect:_p,onDisconnect:hp,onModeInit:up,onModeExit:mp,onClientMessage:pp,onFinishMove:fp,onCreate:gp,onDestroy:Sp,onWeaponStateChange:yp,onTakeDamage:Pp,onGiveDamage:Ep,onDeath:Ip,onSpawn:Ap,onRespawn:Cp}),Dp=[8,9,10,25,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,96,97,98],Np=[[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],[],[],[],[],[],[],[],[]],vp=(e,t)=>{if(!qe(e))return!1;const a=Np[e-400];if(a===null)return!1;const i=t-1e3;return Dp.includes(i)||a.includes(i)},qe=e=>e>=400&&e<=611,wp=(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};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,j.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===H.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&&!qe(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++,j.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--,j.delete(this._id),this._id=-1}addComponent(t){if(this.id===-1)return 0;if(!vp(this.getModel(),t))throw new Error(`[Vehicle]: Invalid component id ${t} attempted to attach to the vehicle ${this}`);return wl(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 Rl(this.id,t)}getComponentInSlot(t){return Vl(this.id,t)}linkToInterior(t){return this.id===-1?0:vl(this.id,t)}setVirtualWorld(t){return this.id===-1?0:$l(this.id,t)}getVirtualWorld(){return this.id===-1?0:Jl(this.id)}repair(){return this.id===-1?0:Wl(this.id)}setPos(t,a,i){return this.id===-1?!1:ul(this.id,t,a,i)}getPos(){return hl(this.id)}getHealth(){return Gl(this.id)}setHealth(t){return this.id===-1?0:Ol(this.id,t)}isPlayerIn(t){return this.id===-1?!1:as(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 Or(t.id,this.id,a)}getZAngle(){return ml(this.id)}setZAngle(t){return this.id===-1?0:gl(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 Ml(this.id,t)}changeColors(t,a){return this.id===-1?0:Ll(this.id,t,a)}setVelocity(t,a,i){return this.id===-1?!1:Kl(this.id,t,a,i)}getVelocity(){return jl(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:Zl(this.id,t,a,i)}getDamageStatus(){return Xl(this.id)}updateDamageStatus(t,a,i,n){return Yl(this.id,t,a,i,n)}getDistanceFromPoint(t,a,i){return fl(this.id,t,a,i)}getModel(){return Hl(this.id)}static getModelInfo(t,a){return zl(t,a)}getModelInfo(t){return C.getModelInfo(this.getModel(),t)}getRotationQuat(){return pl(this.id)}setRespawn(){return this.id===-1?0:Nl(this.id)}isStreamedIn(t){return this.id===-1?!1:_l(this.id,t.id)}setParamsCarDoors(t,a,i,n){return this.id===-1?0:Al(this.id,t,a,i,n)}setParamsCarWindows(t,a,i,n){return this.id===-1?0:Tl(this.id,t,a,i,n)}getParamsCarDoors(){return Cl(this.id)}getParamsCarWindows(){return Dl(this.id)}setParamsEx(t,a,i,n,r,s,l){return this.id===-1?0:Pl(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]=El(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:Il(this.id)}setParamsForPlayer(t,a,i){return this.id===-1?0:Sl(this.id,t.id,a,i)}isTrailerAttached(){return this.id===-1?!1:xl(this.id)}changePaintjob(t){return this.id===-1||!wp(this.getModel(),t)?0:(this.changeColors("#fff","#fff"),bl(this.id,t),1)}attachTrailer(t){return this.id===-1?0:Fl(t.id,this.id)}detachTrailer(){this.isTrailerAttached()&&Bl(this.id)}getTrailer(){return C.getInstance(kl(this.id))}isValid(){return A.skip&&this.id!==-1?!0:C.isValid(this.id)}getMatrix(){return ll(this.id)}getTrainSpeed(){return this.id===-1?0:sl(this.id)}getHydraReactorAngle(){return this.id===-1?0:rl(this.id)}getLandingGearState(){return this.id===-1?0:nl(this.id)}getSirenState(){return this.id===-1?0:il(this.id)}getDriver(){return J.get(tl(this.id))}getLastDriver(){return J.get(el(this.id))}isSirenEnabled(){return Qs(this.id)}toggleSirenEnabled(t){return this.id===-1?0:$s(this.id,t)}setParamsSirenState(t){return this.id===-1?0:Js(this.id,t)}isDead(){return this.id===-1?!0:Xs(this.id)}setDead(t){return this.id===-1?!1:Ys(this.id,t)}setBeenOccupied(t){return this.id===-1?!1:zs(this.id,t)}getRespawnTick(){return this.id===-1?0:Ks(this.id)}setRespawnTick(t){return this.id===-1?!1:Zs(this.id,t)}isOccupied(){return this.id===-1?!1:js(this.id)}hasBeenOccupied(){return this.id===-1?!1:Ws(this.id)}getOccupiedTick(){return this.id===-1?0:Vs(this.id)}setOccupiedTick(t){return this.id===-1?0:Us(this.id,t)}getCab(){return this.id===-1?0:Hs(this.id)}getRespawnDelay(){return this.id===-1?0:Ms(this.id)}setRespawnDelay(t){return this.id===-1?0:ks(this.id,t)}getNumberPlate(){return xs(this.id)}getInterior(){return this.id===-1?0:Bs(this.id)}getPaintjob(){return this.id===-1?-1:Fs(this.id)}getColors(){return Gs(this.id)}setSpawnInfo(t,a,i,n,r,s,l,o=-2,d=-2,c=!1){return this.id===-1||!c&&!qe(t)?0:Os(this.id,t,a,i,n,r,I(s),I(l),o,d)}getSpawnInfo(){return bs(this.id)}getRandomColorPair(){return rt(this.getModel())}show(){return this.id===-1?!1:to(this.id)}hide(){return this.id===-1?!1:ao(this.id)}isHidden(){return this.id===-1?!1:io(this.id)}getVehicleOccupant(t){return co(this.id,t)}getVehicleMaxPassengers(){return st(this.getModel())}countVehicleOccupants(){return _o(this.getModel())}static getVehicleMaxPassengers=st;static getRandomColorPair=rt;static getComponentType=Ul;static colorIndexToColor=ol;static isValid=Ql;static getModelsUsed=al;static getModelCount=qs;static getInstance(t){return j.get(t)}static getInstances(){return[...j.values()]}static __inject_AddStaticVehicle=ql;static __inject_AddStaticVehicleEx=eo;static __inject_CreateVehicle=dl;static __inject_DestroyVehicle=cl}L.onExit(({next:e})=>(C.getInstances().forEach(t=>t.destroy()),j.clear(),e()));const[Rp]=u({name:"OnVehicleDamageStatusUpdate",defaultValue:!1,beforeEach(e,t){return{vehicle:C.getInstance(e),player:m.getInstance(t)}}}),[Lp]=u({name:"OnVehicleDeath",beforeEach(e,t){return{vehicle:C.getInstance(e),killer:m.getInstance(t)}}}),[bp]=u({name:"OnVehicleMod",beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),componentId:a}}}),[Op]=u({name:"OnVehiclePaintjob",beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),paintjobId:a}}}),[Gp]=u({name:"OnVehicleRespray",beforeEach(e,t,a,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),color:[a,i]}}}),[Fp]=u({name:"OnVehicleSirenStateChange",defaultValue:!1,beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),state:!!a}}}),[Bp]=u({name:"OnVehicleSpawn",beforeEach(e){return{vehicle:C.getInstance(e)}}}),[xp]=u({name:"OnVehicleStreamIn",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[kp]=u({name:"OnVehicleStreamOut",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[Mp]=u({name:"OnPlayerEnterVehicle",beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),isPassenger:!!a}}}),[Hp]=u({name:"OnPlayerExitVehicle",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[Vp]=u({name:"OnNpcEnterVehicle",beforeEach(e,t){return{vehicle:C.getInstance(e),seatId:t}}}),[Up]=u({name:"OnNpcExitVehicle"}),[Wp]=u({name:"OnTrailerUpdate",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[jp]=u({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}}}),Kp=Object.freeze({onDamageStatusUpdate:Rp,onDeath:Lp,onMod:bp,onPaintjob:Op,onRespray:Gp,onSirenStateChange:Fp,onSpawn:Bp,onStreamIn:xp,onStreamOut:kp,onPlayerEnter:Mp,onPlayerExit:Hp,onNpcEnter:Vp,onNpcExit:Up,onTrailerUpdate:Wp,onUnoccupiedUpdate:jp});class Zp{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getNetworkStats(){return Mi()}static getPlayerNetworkStats(t){return ki(t.id)}static getBytesReceived(t){return Ni(t.id)}static getBytesSent(t){return wi(t.id)}static getConnectionStatus(t){return bi(t.id)}static getConnectedTime(t){return Ti(t.id)}static getIpPort(t){return Oi(t.id)}static getMessagesReceived(t){return Di(t.id)}static getMessagesRecvPerSecond(t){return Ri(t.id)}static getMessagesSent(t){return vi(t.id)}static getPacketLossPercent(t){return Li(t.id)}}class Xp{_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){Ua(t)}static has(t,a){return An(t.id,a)}forAll(t="win1252"){Va(E.encodeToBuf(E.convertSpecialChar(this.text),t),this.time,this.style)}forPlayer(t,a="win1252"){In(t.id,E.encodeToBuf(E.convertSpecialChar(this.text),a),this.time,this.style)}hideForPlayer(t){return Tn(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===H.MAX_MENUS)throw new Error("[Menu]: The maximum number of menus allowed to be created has been reached 128");return this._id=Ao(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||Co(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===H.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 To(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 Do(this.id,t,a),this}disable(){if(this._id===-1)throw new Error("[Menu]: Cannot disable menu before create");return Ro(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");Lo(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 No(this.id,t.id)}hideForPlayer(t){if(this._id===-1)throw new Error("[Menu]: Cannot hide menu before create");return vo(this.id,t.id)}isDisabled(){return this._id===-1?!1:fo(this.id)}isRowDisabled(t){return this._id===-1||t<0||t>this._itemCount?!1:go(this.id,t)}getItems(t){return this._id===-1?0:So(this.id,t)}getPos(){return this._id===-1?{fX:this.x,fY:this.y}:yo(this.id)}getColumnWidth(){return this.id===-1?{fColumn1:this.col1width,fColumn2:this.col2width}:Po(this.id)}getColumnHeader(t){if(this._id===-1)throw new Error("[Menu]: Cannot get column header before create");return Eo(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 Io(this.id,t,a)}static isValid=wo;static getInstance(t){return Ce.get(t)}static getInstances(){return[...Ce.values()]}static getInstanceByPlayer(t){return this.getInstances().find(a=>a.id===bo(t.id))}}L.onExit(({next:e})=>(fe.getInstances().forEach(t=>t.destroy()),Ce.clear(),e()));const[Yp]=u({name:"OnPlayerExitedMenu",beforeEach(e){return{player:m.getInstance(e)}}}),[zp]=u({name:"OnPlayerSelectedMenuRow",beforeEach(e,t){const a=m.getInstance(e),i=fe.getInstanceByPlayer(a);return{player:a,menu:i,row:t}}}),$p=Object.freeze({onPlayerExited:Yp,onPlayerSelectedRow:zp});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===H.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=Jo(t.id,a,i,n,r);const s=Qe.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===H.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=Vo(a,i,n,r),Ie.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||Qo(t.id,this.id),Ae.delete(this.id)):(A.skip||Uo(this.id),Ie.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 jo(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)qo(i.id,this.id,I(t));else if(a)Wo(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 Zo(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)ed(a.id,this.id);else if(t)Ko(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 Yo(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)td(i.id,this.id,I(a));else if(t)Xo(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 $o(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)ad(a.id,this.id);else if(t)zo(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?nd(a.id,this.id):Go(t.id,this.id)}isVisibleForPlayer(t){if(this.id===-1)return!1;const a=this.sourceInfo.player;return a?rd(a.id,this.id):Fo(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?sd(a.id,this.id):Bo(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?ld(a.id,this.id):xo(t.id,this.id)}isFlashingForPlayer(t){if(this.id===-1)return!1;const a=this.sourceInfo.player;return a?od(a.id,this.id):ko(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?dd(t.id,this.id):Mo(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?cd(a.id,this.id,t):Ho(this.id,t),this}static isValidPlayer=id;static isValidGlobal=Oo;static getInstance(t,a){return a?Ie.get(t):Ae.get(t)}static getInstances(t){return t?[...Ie.values()]:[...Ae.values()]}}L.onExit(({next:e})=>(b.getInstances(!0).forEach(t=>t.destroy()),b.getInstances(!1).forEach(t=>t.destroy()),Ie.clear(),Ae.clear(),e()));const[Jp]=u({name:"OnPlayerEnterGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[Qp]=u({name:"OnPlayerLeaveGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[qp]=u({name:"OnPlayerEnterPlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[ef]=u({name:"OnPlayerLeavePlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[tf]=u({name:"OnPlayerClickGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[af]=u({name:"OnPlayerClickPlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),nf=Object.freeze({onPlayerEnterGlobal:Jp,onPlayerLeaveGlobal:Qp,onPlayerEnterPlayer:qp,onPlayerLeavePlayer:ef,onPlayerClickGlobal:tf,onPlayerClickPlayer:af}),[de]=u({name:"Streamer_OnItemStreamIn",identifier:"iii",beforeEach(e,t,a){return{type:e,id:t,forPlayer:m.getInstance(a)}}}),[ce]=u({name:"Streamer_OnItemStreamOut",identifier:"iii",beforeEach(e,t,a){return{type:e,id:t,forPlayer:m.getInstance(a)}}}),[rf]=u({name:"Streamer_OnPluginError",identifier:"s",beforeEach(e){return{error:e}}});class S{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getTickRate=yu;static setTickRate=Pu;static getPlayerTickRate(t){return Eu(t.id)}static setPlayerTickRate(t,a=50){return Iu(t.id,a)}static toggleChunkStream=Au;static isToggleChunkStream=Cu;static getChunkTickRate(t,a=-1){return a instanceof m?Ut(t,a.id):Ut(t,a)}static setChunkTickRate(t,a,i=-1){return i instanceof m?Wt(t,a,i.id):Wt(t,a,i)}static getChunkSize=Tu;static setChunkSize=Du;static getMaxItems=Nu;static setMaxItems=vu;static getVisibleItems(t,a=-1){return a instanceof m?jt(t,a.id):jt(t,a)}static setVisibleItems(t,a,i=-1){return i instanceof m?Kt(t,a,i.id):Kt(t,a,i)}static getRadiusMultiplier(t,a=-1){return a instanceof m?Zt(t,a.id):Zt(t,a)}static setRadiusMultiplier(t,a,i=-1){return i instanceof m?Xt(t,i.id):Xt(t,a,i)}static getTypePriority=wu;static setTypePriority=Ru;static getCellDistance=Lu;static setCellDistance=bu;static getCellSize=Ou;static setCellSize=Gu;static toggleItemStatic=Fu;static isToggleItemStatic=Bu;static toggleItemInvAreas=xu;static isToggleItemInvAreas=ku;static toggleItemCallbacks=Mu;static isToggleItemCallbacks=Hu;static toggleErrorCallback=Vu;static isToggleErrorCallback=Uu;static amxUnloadDestroyItems=Wu;static processActiveItems=ju;static toggleIdleUpdate(t,a){return Ku(t.id,a)}static isToggleIdleUpdate(t){return Zu(t.id)}static toggleCameraUpdate(t,a){return Xu(t.id,a)}static isToggleCameraUpdate(t){return Yu(t.id)}static toggleItemUpdate(t,a,i){return zu(t.id,a,i)}static isToggleItemUpdate(t,a){return $u(t.id,a)}static getLastUpdateTime(){return Ju()}static update(t,a=-1){return Qu(t.id,a)}static updateEx(t,a,i,n,r,s,l,o,d){return qu(t.id,a,i,n,r,s,l,o,d)}static getDistanceToItem=Th;static toggleItem(t,a,i,n){return Dh(t.id,a,i,n)}static isToggleItem(t,a,i){return Nh(t.id,a,i)}static toggleAllItems(t,a,i,n=[-1]){return vh(t.id,a,i,n)}static getItemInternalID(t,a,i){return wh(t.id,a,i)}static getItemStreamerID(t,a,i){return Rh(t.id,a,i)}static isItemVisible(t,a,i){return Lh(t.id,a,i)}static destroyAllVisibleItems(t,a,i=1){return bh(t.id,a,i)}static countVisibleItems(t,a,i=1){return Oh(t.id,a,i)}static destroyAllItems=Gh;static countItems=Fh;static getNearbyItems=Bh;static getAllVisibleItems(t,a,i){return xh(t.id,a,i)}static getItemPos=kh;static setItemPos=Mh;static getItemOffset=Hh;static setItemOffset=Vh;static getFloatData=eh;static setFloatData=th;static getIntData=ah;static setIntData=ih;static getArrayData=nh;static setArrayData=rh;static isInArrayData=sh;static appendArrayData=lh;static removeArrayData=oh;static getArrayDataLength=Vt;static getUpperBound=dh;static onPluginError=rf}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,ie.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:h,color:p,extended:g}=this.sourceInfo;if(h<0||h>63)throw new Error("[StreamerMapIcon]: Invalid map icon type");return t??=Fe.LOCAL,a??=N.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=gh(o,d,c,h,I(p),t,a,i,n,r,s,l),ie.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=ch(o,d,c,h,I(p),i,n,r,a,t,s,l),ie.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||_h(this.id),ie.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 S.toggleItemCallbacks(P.MAP_ICON,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.MAP_ICON,this.id)}static isValid=hh;static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.MAP_ICON,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.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})=>(_e.getInstances().forEach(t=>t.destroy()),ie.clear(),e()));const[sf,lf]=u({name:"OnDynamicMapIconStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[of,df]=u({name:"OnDynamicMapIconStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===P.MAP_ICON?lf(a,_e.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===P.MAP_ICON?df(a,_e.getInstance(t)):i());const cf=Object.freeze({onStreamIn:sf,onStreamOut:of});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:h,extended:p}=this.sourceInfo;if(l<0)throw new Error("[StreamerPickup]: Invalid pickup type");return t??=N.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,h,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,h,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 S.toggleItemCallbacks(P.PICKUP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.PICKUP,this.id)}static isValid=uu;static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.PICKUP,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return me.get(t)}static getInstances(){return[...me.values()]}static __inject_CreateDynamicPickup=_u;static __inject_CreateDynamicPickupEx=mh;static __inject_DestroyDynamicPickup=hu}L.onExit(({next:e})=>(k.getInstances().forEach(t=>t.destroy()),me.clear(),e()));const[_f,hf]=u({name:"OnDynamicPickupStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[uf,mf]=u({name:"OnDynamicPickupStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===P.PICKUP?hf(a,k.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===P.PICKUP?mf(a,k.getInstance(t)):i());const[pf]=u({name:"OnPlayerPickUpDynamicPickup",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),pickup:k.getInstance(t)}}}),ff=Object.freeze({onPlayerPickUp:pf,onStreamIn:_f,onStreamOut:uf});class Y{sourceInfo=null;_id=-1;get id(){return this._id}constructor(t){if(typeof t=="number"){const a=Y.getInstance(t);if(a)return a;this._id=t,ae.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:h}=this.sourceInfo;if(l<0)throw new Error("[StreamerCheckpoint]: Invalid checkpoint size");return t??=N.CP_SD,s??=0,h?(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=ph(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=z_(o,d,c,l,a,i,n,t,r,s)),ae.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||Mt(this.id),ae.delete(this.id),this._id=-1,this}isValid(){return A.skip&&this.id!==-1?!0:Y.isValid(this.id)}togglePlayer(t,a){if(this.id===-1)throw new Error("[StreamerCheckpoint]: Unable to toggle the player before create");return $_(t.id,this.id,a),this}isPlayerIn(t){return this.id===-1?!1:Q_(t.id,this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerCheckpoint]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(P.CP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.CP,this.id)}static isValid=Ht;static togglePlayerAll(t,a){return J_(t.id,a)}static getPlayerVisible(t){return ae.get(q_(t.id))}static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.CP,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return ae.get(t)}static getInstances(){return[...ae.values()]}}L.onExit(({next:e})=>(Y.getInstances().forEach(t=>t.destroy()),ae.clear(),e()));const[gf,Sf]=u({name:"OnDynamicCheckPointStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[yf,Pf]=u({name:"OnDynamicCheckPointStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===P.CP?Sf(a,Y.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===P.CP?Pf(a,Y.getInstance(t)):i());const[Ef]=u({name:"OnPlayerEnterDynamicCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),cp:Y.getInstance(t)}}}),[If]=u({name:"OnPlayerLeaveDynamicCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),cp:Y.getInstance(t)}}}),Af=Object.freeze({onPlayerEnter:Ef,onPlayerLeave:If,onStreamIn:gf,onStreamOut:yf});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,ne.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: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??=N.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=fh(l,d,c,h,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=mu(l,d,c,h,p,g,f,o,a,i,n,t,r,s)),ne.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||Mt(this.id),ne.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("[StreamerRaceCP]: Unable to toggle the player before create");return pu(t.id,this.id,a),this}static togglePlayerAll(t,a){return fu(t.id,a)}isPlayerIn(t){return this.id===-1?!1:gu(t.id,this.id)}static getPlayerVisible(t){return ne.get(Su(t.id))}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerRaceCP]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(P.RACE_CP,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.RACE_CP,this.id)}static isValid=Ht;static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.RACE_CP,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.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})=>(z.getInstances().forEach(t=>t.destroy()),ne.clear(),e()));const[Cf,Tf]=u({name:"OnDynamicRaceCPStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Df,Nf]=u({name:"OnDynamicRaceCPStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===P.RACE_CP?Tf(a,z.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===P.RACE_CP?Nf(a,z.getInstance(t)):i());const[vf]=u({name:"OnPlayerEnterDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCP:z.getInstance(t)}}}),[wf]=u({name:"OnPlayerLeaveDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCp:z.getInstance(t)}}}),Rf=Object.freeze({onPlayerEnter:vf,onPlayerLeave:wf,onStreamIn:Cf,onStreamOut:Df});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:h,invulnerable:p,health:g,extended:f}=this.sourceInfo;return t??=N.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=Ch(l,o,d,c,h,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=n_(l,o,d,c,h,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||r_(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:l_(this.id,t.id)}getVirtualWorld(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get virtual world before create");return o_(this.id)}setVirtualWorld(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set virtual world before create");return d_(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(!ze(t,a))throw new Error(`[StreamerActor]: Invalid anim library or name ${t} ${a}`);return c_(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 __(this.id)}getFacingAngle(){return h_(this.id)}setFacingAngle(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set facing angle before create");return u_(this.id,t)}getPos(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get pos before create");return m_(this.id)}setPos(t,a,i){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set pos before create");return p_(this.id,t,a,i)}getHealth(){return f_(this.id)}setHealth(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set health before create");return g_(this.id,t)}isInvulnerable(){return this.id===-1?!1:y_(this.id)}setInvulnerable(t=!0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set invulnerable before create");return S_(this.id,t)}getPlayerTarget(t){const a=P_(t.id);return Q.get(a)}getPlayerCameraTarget(t){const a=E_(t.id);return Q.get(a)}getSkin(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get skin before create");return ws(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:Rs(this.id,t)}getSpawnInfo(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get spawn info before create");return Ls(this.id)}getAnimation(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get animation before create");return I_(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(P.ACTOR,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.ACTOR,this.id)}static isValid=s_;static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.ACTOR,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.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[Lf]=u({name:"OnDynamicActorStreamIn",identifier:"ii",beforeEach(e,t){return{actor:ee.getInstance(e),forPlayer:m.getInstance(t)}}}),[bf]=u({name:"OnDynamicActorStreamOut",identifier:"ii",beforeEach(e,t){return{actor:ee.getInstance(e),forPlayer:m.getInstance(t)}}}),[Of]=u({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}}}),Gf=Object.freeze({onStreamIn:Lf,onStreamOut:bf,onPlayerGiveDamage:Of});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:h,color:p,drawDistance:g,x:f,y,z:w,extended:O}=this.sourceInfo;return t??=D.PLAYER_ID,a??=D.VEHICLE_ID,n??=N.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=um(h,I(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=hm(c||"utf8",h,I(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||a_(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:S.getIntData(P.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 pm(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),mm(this.id,I(t),a,n)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[Streamer3DTextLabel]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(P.TEXT_3D_LABEL,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.TEXT_3D_LABEL,this.id)}setOffsets(t,a,i){if(this.id===-1)return 0;const n=S.setFloatData(P.TEXT_3D_LABEL,this.id,W.ATTACH_OFFSET_X,t);return S.setFloatData(P.TEXT_3D_LABEL,this.id,W.ATTACH_OFFSET_Y,a),S.setFloatData(P.TEXT_3D_LABEL,this.id,W.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=S.setIntData(P.TEXT_3D_LABEL,this.id,W.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=S.setIntData(P.TEXT_3D_LABEL,this.id,W.ATTACHED_VEHICLE,r);return r!==D.VEHICLE_ID&&this.setOffsets(a,i,n),this.sourceInfo&&(this.sourceInfo.attachedVehicle=r),s}static isValid=i_;static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.TEXT_3D_LABEL,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.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[Ff,Bf]=u({name:"OnDynamic3dTextStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[xf,kf]=u({name:"OnDynamic3dTextStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===P.TEXT_3D_LABEL?Bf(a,he.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===P.TEXT_3D_LABEL?kf(a,he.getInstance(t)):i());const Mf=Object.freeze({onStreamIn:Ff,onStreamOut:xf});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,K.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:h,rx:p,ry:g,rz:f,extended:y}=this.sourceInfo;return t??=N.OBJECT_SD,a??=N.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=uh(o,d,c,h,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=Uh(o,d,c,h,p,g,f,i,n,r,t,a,s,l)),K.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||Wh(this.id),K.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:S.getIntData(P.OBJECT,this._id,W.MODEL_ID)}getPos(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot get position before create");return Kh(this.id)}setPos(t,a,i){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set position before create");return Zh(this.id,t,a,i)}getRot(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot get rotation before create");return Xh(this.id)}setRot(t,a,i){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set rotation before create");return Yh(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(),zh(this.id,t,a,i,n,r,s,l)}stop(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot stop moving before create");return $h(this.id)}isMoving(){return this.id===-1?!1:Jh(this.id)}attachCamera(t){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachCamera before both are created");return Qh(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 qh(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 eu(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 tu(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(),au(t.id,this.id)}isMaterialUsed(t){return this.id===-1?!1:iu(this.id,t)}removeMaterial(t){return this.id===-1||!this.isMaterialUsed(t)?0:nu(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,a,i,n,r="#000"){if(this.id===-1)throw new Error("[StreamerObject]: Unable to set material before create");return ru(this.id,t,a,i,n,I(r))}isMaterialTextUsed(t){return this.id===-1?!1:su(this.id,t)}removeMaterialText(t){return this.isMaterialTextUsed(t)?lu(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=je.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),fm(t||"utf8",this.id,a,i,n,r,s,l,I(o),I(d),c)}getPlayerCameraTarget(t){const a=ou(t.id);if(a!==D.OBJECT_ID)return K.get(a)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerObject]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(P.OBJECT,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.OBJECT,this.id)}setNoCameraCollision(){return du(this.id)}getNoCameraCollision(){return cu(this.id)}static isValid=jh;static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.OBJECT,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!0)}static getInstance(t){return K.get(t)}static getInstances(){return[...K.values()]}}L.onExit(({next:e})=>(B.getInstances().forEach(t=>t.destroy()),K.clear(),e()));const[Hf,Vf]=u({name:"OnDynamicObjectStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Uf,Wf]=u({name:"OnDynamicObjectStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===P.OBJECT?Vf(a,B.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===P.OBJECT?Wf(a,B.getInstance(t)):i());const[jf]=u({name:"OnDynamicObjectMoved",identifier:"i",beforeEach(e){return{object:B.getInstance(e)}}}),[Kf]=u({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}}}),[Zf]=u({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}}}),[Xf]=u({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}}}),[Yf]=u({name:"OnPlayerEditAttachedObject",defaultValue:!1,beforeEach(e,t,a,i,n,r,s,l,o,d,c,h,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:h,fScaleY:p,fScaleZ:g}}}),zf=Object.freeze({onMoved:jf,onPlayerEdit:Kf,onPlayerSelect:Zf,onPlayerShoot:Xf,onPlayerEditAttached:Yf,onStreamIn:Hf,onStreamOut:Uf});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=Sh(s,l,o,t,a,i)}else if(n==="cuboid"){const{minX:s,minY:l,minZ:o,maxX:d,maxY:c,maxZ:h}=this.sourceInfo;this._id=Ih(s,l,o,d,c,h,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=yh(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=Ah(s,l,o,t,a,i)}else if(n==="rectangle"){const{minX:s,minY:l,maxX:o,maxY:d}=this.sourceInfo;this._id=Eh(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=Ph(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=A_(s,l,o,t,a,i)}else if(n==="cuboid"){const{minX:s,minY:l,minZ:o,maxX:d,maxY:c,maxZ:h}=this.sourceInfo;this._id=N_(s,l,o,d,c,h,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=C_(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=v_(s,l,o,t,a,i)}else if(n==="rectangle"){const{minX:s,minY:l,maxX:o,maxY:d}=this.sourceInfo;this._id=D_(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=T_(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||w_(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 L_(this.id)}getPolygonPoints(){return b_(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 Ft(this.id)}isPlayerIn(t,a=!1){return this.id===-1?!1:O_(t.id,this.id,a)}static isPlayerInAny(t,a=!1){return G_(t.id,a)}isAnyPlayerIn(t=!1){return this.id===-1?!1:F_(this.id,t)}static isAnyPlayerInAny(t=!1){return B_(t)}static getPlayerAreas(t){return G.getPlayerAreasNumber(t)?x_(t.id).areas.map(a=>q.get(a)):[]}static getPlayerAreasNumber(t){return Bt(t.id)}isPointIn(t,a,i){return this.id===-1?!1:k_(this.id,t,a,i)}static isPointInAny(t,a,i){return M_(t,a,i)}isLineIn(t,a,i,n,r,s){return this.id===-1?!1:H_(this.id,t,a,i,n,r,s)}static isLineInAny(t,a,i,n,r,s){return V_(t,a,i,n,r,s)}static getForPoint(t,a,i){return G.getNumberForPoint(t,a,i)?U_(t,a,i).areas.map(n=>G.getInstance(n)):[]}static getNumberForPoint(t,a,i){return xt(t,a,i)}static getForLine(t,a,i,n,r,s){return G.getNumberForLine(t,a,i,n,r,s)?W_(t,a,i,n,r,s).areas.map(l=>q.get(l)):[]}static getNumberForLine(t,a,i,n,r,s){return kt(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 j_(this.id,t.id,Ge.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 K_(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 Z_(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 X_(this.id,t)}isToggleSpectateMode(){return this.id===-1?!1:Y_(this.id)}toggleCallbacks(t=!0){if(this.id===-1)throw new Error("[StreamerArea]: Unable to toggle callbacks before create");return S.toggleItemCallbacks(P.AREA,this.id,t)}isToggleCallbacks(){return this.id===-1?!1:S.isToggleItemCallbacks(P.AREA,this.id)}static isValid=R_;static togglePlayerUpdate(t,a=!0){return S.toggleItemUpdate(t,P.AREA,a)}static hideForPlayer(t,a=-5e4){return S.updateEx(t,0,0,a),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,a=-5e4){const i=t.getPos();return i.ret?S.updateEx(t,i.x,i.y,i.z):S.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[$f,Jf]=u({name:"OnDynamicAreaStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Qf,qf]=u({name:"OnDynamicAreaStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});de(({type:e,id:t,forPlayer:a,next:i})=>e===P.AREA?Jf(a,G.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===P.AREA?qf(a,G.getInstance(t)):i());const[eg]=u({name:"OnPlayerEnterDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:G.getInstance(t)}}}),[tg]=u({name:"OnPlayerLeaveDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:G.getInstance(t)}}}),ag=Object.freeze({onStreamIn:$f,onStreamOut:Qf,onPlayerEnter:eg,onPlayerLeave:tg});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=E.encodeToBuf(E.convertSpecialChar(i),r);if(n){if(_.getInstances(!1).length===H.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=Qe.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===H.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(Ee.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(Ee.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(Ee.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=E.encodeToBuf(E.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=bd;static __inject__CreatePlayerTextDraw=Ic;static __inject__TextDrawDestroy=Od;static __inject__PlayerTextDrawDestroy=Ac;static __inject__TextDrawFont=Wd;static __inject__PlayerTextDrawFont=Oc;static __inject__TextDrawColor=xd;static __inject__PlayerTextDrawColor=Nc;static __inject__TextDrawBoxColor=Md;static __inject__PlayerTextDrawBoxColor=wc;static __inject__TextDrawBackgroundColor=Ud;static __inject__PlayerTextDrawBackgroundColor=bc;static __inject__TextDrawAlignment=Bd;static __inject__PlayerTextDrawAlignment=Dc;static __inject__TextDrawLetterSize=Gd;static __inject__PlayerTextDrawLetterSize=Cc;static __inject__TextDrawSetOutline=Vd;static __inject__PlayerTextDrawSetOutline=Lc;static __inject__TextDrawSetPreviewModel=Jd;static __inject__PlayerTextDrawSetPreviewModel=Mc;static __inject__TextDrawSetPreviewRot=Qd;static __inject__PlayerTextDrawSetPreviewRot=Hc;static __inject__TextDrawSetPreviewVehicleColors=qd;static __inject__PlayerTextDrawSetPreviewVehicleColors=Vc;static __inject__TextDrawSetProportional=jd;static __inject__PlayerTextDrawSetProportional=Gc;static __inject__TextDrawSetSelectable=Kd;static __inject__PlayerTextDrawSetSelectable=Fc;static __inject__TextDrawSetShadow=Hd;static __inject__PlayerTextDrawSetShadow=Rc;static __inject__PlayerTextDrawSetString=kc;static __inject__TextDrawSetStringForPlayer=Ld;static __inject__TextDrawSetString=$d;static __inject__TextDrawTextSize=Fd;static __inject__PlayerTextDrawTextSize=Tc;static __inject__PlayerTextDrawUseBox=vc;static __inject__TextDrawUseBox=kd;static __inject__PlayerTextDrawShow=Bc;static __inject__TextDrawShowForPlayer=Zd;static __inject__PlayerTextDrawHide=xc;static __inject__TextDrawHideForPlayer=Xd;static __inject__TextDrawShowForAll=Yd;static __inject__TextDrawHideForAll=zd;static __inject__IsValidPlayerTextDraw=ac;static __inject__IsValidTextDraw=_d;static __inject__IsPlayerTextDrawVisible=ic;static __inject__IsTextDrawVisibleForPlayer=hd;static __inject__PlayerTextDrawGetString=nc;static __inject__TextDrawGetString=ud;static __inject__PlayerTextDrawSetPos=rc;static __inject__TextDrawSetPos=md;static __inject__PlayerTextDrawGetLetterSize=sc;static __inject__TextDrawGetLetterSize=pd;static __inject__PlayerTextDrawGetTextSize=lc;static __inject__TextDrawGetTextSize=fd;static __inject__PlayerTextDrawGetPos=oc;static __inject__TextDrawGetPos=gd;static __inject__PlayerTextDrawGetColor=dc;static __inject__TextDrawGetColor=Sd;static __inject__PlayerTextDrawGetBoxColor=cc;static __inject__TextDrawGetBoxColor=yd;static __inject__PlayerTextDrawGetBackgroundColor=_c;static __inject__TextDrawGetBackgroundColor=Pd;static __inject__PlayerTextDrawGetShadow=hc;static __inject__TextDrawGetShadow=Ed;static __inject__PlayerTextDrawGetOutline=uc;static __inject__TextDrawGetOutline=Id;static __inject__PlayerTextDrawGetFont=mc;static __inject__TextDrawGetFont=Ad;static __inject__PlayerTextDrawIsBox=pc;static __inject__TextDrawIsBox=Cd;static __inject__PlayerTextDrawIsProportional=fc;static __inject__TextDrawIsProportional=Td;static __inject__PlayerTextDrawIsSelectable=gc;static __inject__TextDrawIsSelectable=Dd;static __inject__PlayerTextDrawGetAlignment=Sc;static __inject__TextDrawGetAlignment=Nd;static __inject__PlayerTextDrawGetPreviewModel=yc;static __inject__TextDrawGetPreviewModel=vd;static __inject__PlayerTextDrawGetPreviewRot=Pc;static __inject__TextDrawGetPreviewRot=wd;static __inject__TextDrawGetPreviewVehicleColors=Rd;static __inject__PlayerTextDrawGetPreviewVehicleColors=Ec}L.onExit(({next:e})=>(_.getInstances(!0).forEach(t=>t.destroy()),_.getInstances(!1).forEach(t=>t.destroy()),Te.clear(),De.clear(),e()));const[ig]=u({name:"OnPlayerClickTextDraw",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===D.TEXT_DRAW?t:_.getInstance(t,!0)}}}),[ng]=u({name:"OnPlayerClickPlayerTextDraw",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===D.TEXT_DRAW?t:_.getInstance(t,!1)}}}),rg=Object.freeze({onPlayerClickGlobal:ig,onPlayerClickPlayer:ng});function sg(e,t){return(e&t)===t}function lg(e,t,a){return(e&a)===a&&(t&a)!==a}function og(e,t){return!!(e&t)}function dg(e,t,a){return(e&a)!==a&&(t&a)===a}function cg(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]}exports.ArtworkEnum=ot,exports.BodyPartsEnum=Et,exports.BoneIdsEnum=It,exports.BulletHitTypesEnum=Rt,exports.CameraCutStylesEnum=ye,exports.CameraModesEnum=Pt,exports.CarModTypeEnum=Tt,exports.ClickSourcesEnum=dt,exports.ConnectionStatusEnum=_t,exports.DamageDeathReasonEnum=We,exports.Dialog=R,exports.DialogStylesEnum=Ve,exports.Dynamic3DTextLabel=he,exports.Dynamic3DTextLabelEvent=Mf,exports.DynamicActor=ee,exports.DynamicActorEvent=Gf,exports.DynamicArea=G,exports.DynamicAreaEvent=ag,exports.DynamicCheckPointEvent=Af,exports.DynamicCheckpoint=Y,exports.DynamicMapIcon=_e,exports.DynamicMapIconEvent=cf,exports.DynamicObject=B,exports.DynamicObjectEvent=zf,exports.DynamicPickup=k,exports.DynamicPickupEvent=ff,exports.DynamicRaceCP=z,exports.DynamicRaceCPEvent=Rf,exports.ERecordStatus=V,exports.E_STREAMER=W,exports.EditResponseTypesEnum=ct,exports.FightingStylesEnum=St,exports.ForceSyncEnum=At,exports.GameMode=L,exports.GameText=Xp,exports.GangZone=b,exports.GangZoneEvent=nf,exports.I18n=E,exports.InvalidEnum=D,exports.KeysEnum=ht,exports.LimitsEnum=H,exports.MapIconStyles=Fe,exports.MapIconStylesEnum=yt,exports.MarkerModesEnum=ut,exports.MaterialTextAlign=Gt,exports.MaterialTextSizes=je,exports.Menu=fe,exports.MenuEvent=$p,exports.NPCPlaybackEnum=mt,exports.NetStats=Zp,exports.Npc=v,exports.NpcEvent=Tp,exports.ObjectMaterialAlignmentEnum=ft,exports.ObjectMaterialTextSizeEnum=pt,exports.Player=m,exports.PlayerEvent=Qe,exports.PlayerStateEnum=Pe,exports.RecordTypesEnum=bt,exports.SelectObjectTypesEnum=gt,exports.SpecialActionsEnum=Ue,exports.SpectateModesEnum=be,exports.Streamer=S,exports.StreamerAreaTypes=Ot,exports.StreamerDistances=N,exports.StreamerItemTypes=P,exports.StreamerMiscellaneous=Oe,exports.StreamerObjectTypes=Ge,exports.TextDraw=_,exports.TextDrawAlignEnum=Ct,exports.TextDrawEvent=rg,exports.TextDrawFontsEnum=Ee,exports.Vehicle=C,exports.VehicleEvent=Kp,exports.VehicleModelInfoEnum=Nt,exports.VehicleParamsEnum=Dt,exports.WeaponEnum=vt,exports.WeaponSkillsEnum=wt,exports.WeaponStatesEnum=Lt,exports.animateLib=ea,exports.defineEvent=u,exports.defineHooks=cg,exports.getAnimateDurationByLibName=Gm,exports.isHolding=sg,exports.isPressed=lg,exports.isPressing=og,exports.isReleased=dg,exports.isValidAnimateLib=Ye,exports.isValidAnimateName=ze,exports.rgba=I,exports.useTrigger=Sa,exports.withTriggerOptions=ya;
|
|
1
|
+
"use strict";var ca=require("node:util"),Me=require("iconv-lite");function nt(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 _a(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):nt(r)?nt(s)?e[n]=Pe(s,r):e[n]=Pe({},r):(s===void 0||r!==void 0)&&(e[n]=r)}return e}function ha(e,t){const a={...e};for(let i=0;i<t.length;i++){const n=t[i];delete a[n]}return a}const ua=new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+","gu");function ma(e){return Array.from(e.match(ua)??[])}function Ve(e){return ma(e).map(a=>a.toLowerCase()).join("_")}function pa(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}function fa(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function ga(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 He(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?pa(t)?He(e,ga(t),a):a:i}case"number":case"symbol":{typeof t=="number"&&(t=fa(t));const i=e[t];return i===void 0?a:i}default:{if(Array.isArray(t))return Pa(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 Pa(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 Sa(e){return e instanceof Buffer}class E{constructor(t,a){this.defaultLocale=t,this.locales=a,this.defaultLocale=Ve(t),this.locales=E.snakeLocaleKeys(a)}addLocales=t=>{Pe(this.locales,E.snakeLocaleKeys(t))};removeLocales=(...t)=>{this.locales=ha(this.locales,t)};$t=(t,a,i=this.defaultLocale)=>{const n=this.locales[Ve(i)],r=He(this.locales[this.defaultLocale],t),s=He(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=ca.format(l,...a)),l};static isValidate(t){if(!Me.encodingExists(t))throw new Error(`[i18n]: unknown charset ${t}`)}static encodeToBuf(t,a){return E.isValidate(a),[...Me.encode(t,a),0]}static decodeFromBuf(t,a="utf8"){E.isValidate(a);const i=Sa(t)?t:Buffer.from(E.getValidStr(t));return Me.decode(i,a)}static getValidStr(t){return t.indexOf(0)===-1?t:t.slice(0,t.indexOf(0))}static snakeLocaleKeys(t){return _a(t,(a,i)=>Ve(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,rt=new Map;function ya(e,t){return typeof e=="boolean"?+e:typeof e=="number"&&!isNaN(e)?e:+t}function st(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 ya(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 st(e,d,...o.args)}return st(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)),rt.set(t,n),s}function Ea(e){return rt.get(e)}function Ia(e){return Object.assign(e,{__trigger__:!0})}const Aa=e=>!!samp.callNative("IsValidNickName","s",e),Ca=(e,t)=>{samp.callNative("AllowNickNameCharacter","ii",e,t)},Na=e=>!!samp.callNative("IsNickNameCharacterAllowed","i",e),Ta=(e,t)=>!!samp.callNative("AddServerRule","ss",e,t),Da=(e,t)=>!!samp.callNative("SetServerRule","ss",e,t),va=e=>!!samp.callNative("IsValidServerRule","s",e),wa=e=>!!samp.callNative("RemoveServerRule","s",e),Ra=e=>{samp.callNative("AllowAdminTeleport","i",e)},La=()=>!!samp.callNative("IsAdminTeleportAllowed",""),ba=e=>{samp.callNative("AllowInteriorWeapons","i",e)},Oa=()=>!!samp.callNative("AreInteriorWeaponsAllowed",""),Ga=()=>!!samp.callNative("AreAllAnimationsEnabled",""),Fa=e=>{samp.callNative("EnableAllAnimations","i",e)},Ba=e=>{const[t,a]=samp.callNative("GetConsoleVarAsString","sAi",e,64);return{consoleVarBuf:t,ret:a}},xa=e=>samp.callNative("GetConsoleVarAsInt","s",e),ka=e=>!!samp.callNative("GetConsoleVarAsBool","s",e),Ma=()=>samp.callNative("GetWeather",""),Va=e=>samp.callNative("GetServerRuleFlags","s",e),Ha=(e,t)=>!!samp.callNative("SetServerRuleFlags","si",e,t),Ua=e=>!!samp.callNative("SetModeRestartTime","f",e),Wa=()=>samp.callNativeFloat("GetModeRestartTime",""),ja=(e,t,a)=>samp.callNative("GameTextForAll","aii",e,t,a),Ka=e=>{samp.callNative("HideGameTextForAll","i",e)},Za=(e,t,a)=>samp.callNative("SendDeathMessage","iii",e,t,a),Xa=()=>samp.callNative("GetMaxPlayers",""),Ue=(e,t,a)=>Math.sqrt(e*e+t*t+a*a),Ya=e=>samp.callNative("SetGameModeText","s",e),za=e=>samp.callNative("ShowNameTags","i",e),$a=e=>samp.callNative("ShowPlayerMarkers","i",e),Ja=e=>samp.callNative("SetWorldTime","i",e),Qa=()=>samp.callNative("GetWorldTime",""),qa=()=>!!samp.callNative("EnableVehicleFriendlyFire",""),ei=e=>samp.callNative("SetWeather","i",e),ti=()=>samp.callNativeFloat("GetGravity",""),ai=e=>samp.callNative("SetGravity","f",e),ii=(e,t,a,i,n)=>samp.callNative("CreateExplosion","fffif",e,t,a,i,n),ni=e=>samp.callNative("EnableZoneNames","i",e),ri=()=>!!samp.callNative("UsePlayerPedAnims",""),si=()=>!!samp.callNative("DisableInteriorEnterExits",""),li=e=>samp.callNative("SetNameTagDrawDistance","f",e),oi=()=>samp.callNative("DisableNameTagLOS",""),di=e=>samp.callNative("LimitGlobalChatRadius","f",e),ci=e=>samp.callNative("LimitPlayerMarkerRadius","f",e),_i=(e,t)=>samp.callNative("ConnectNPC","ss",e,t),hi=()=>samp.callNative("GetServerTickRate",""),ui=e=>samp.callNative("GetAnimationName","iSiSi",e,32,32),mi=e=>!!samp.callNative("EnableStuntBonusForAll","i",e),pi=e=>{samp.callNative("ToggleChatTextReplacement","i",e)},fi=()=>!!samp.callNative("ChatTextReplacementToggled",""),gi=e=>samp.callNative("GetWeaponSlot","i",e),Pi=e=>{const[t,a]=samp.callNative("GetWeaponName","iSi",e,32);return{name:t,ret:a}},Si=()=>samp.callNative("GetAvailableClasses",""),yi=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}},Ei=(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),Ii=e=>samp.callNative("SetTeamCount","i",e),Ai=(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),Ci=(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),Ni=(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),Ti=e=>!!samp.callNative("SpawnPlayer","i",e),Di=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}},vi=e=>samp.callNative("NetStats_GetConnectedTime","i",e),wi=e=>samp.callNative("NetStats_MessagesReceived","i",e),Ri=e=>samp.callNative("NetStats_BytesReceived","i",e),Li=e=>samp.callNative("NetStats_MessagesSent","i",e),bi=e=>samp.callNative("NetStats_BytesSent","i",e),Oi=e=>samp.callNative("NetStats_MessagesRecvPerSecond","i",e),Gi=e=>samp.callNativeFloat("NetStats_PacketLossPercent","i",e),Fi=e=>samp.callNative("NetStats_ConnectionStatus","i",e),Bi=e=>{const[t,a]=samp.callNative("NetStats_GetIpPort","iSi",e,134);return{ipPort:t,ret:a}},xi=e=>!!samp.callNative("IsPlayerAdmin","i",e),ki=(e,t)=>!!samp.callNative("SetPlayerAdmin","ii",e,t),Mi=e=>!!samp.callNative("Kick","i",e),Vi=e=>!!samp.callNative("Ban","i",e),Hi=e=>{const[t,a]=samp.callNative("GetPlayerNetworkStats","iSi",e,1024);return{stats:t,ret:a}},Ui=()=>{const[e,t]=samp.callNative("GetNetworkStats","Si",1024);return{stats:e,ret:t}},Wi=(e,t)=>samp.callNative("BlockIpAddress","si",e,t),ji=e=>samp.callNative("UnBlockIpAddress","s",e),Ki=(e,t)=>{const[a,i]=samp.callNative("gpci","iAi",e,41);return{val:E.decodeFromBuf(E.getValidStr(a),t),ret:i}},Zi=(e,t,a,i,n)=>samp.callNative("SendClientCheck","iiiii",e,t,a,i,n),Xi=()=>{samp.callNative("ClearBanList","")},Yi=e=>!!samp.callNative("IsBanned","s",e),zi=e=>samp.callNative("GetPlayerRawIp","i",e),$i=e=>{const[t,a]=samp.callNative("GetPlayerIp","iSi",e,128);return{ip:t,ret:a}},Ji=e=>{const[t,a]=samp.callNative("GetPlayerVersion","iSi",e,24);return{version:t,ret:a}},I=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},Qi=(e,t)=>!!samp.callNative("TogglePlayerWidescreen","ii",e,t),qi=e=>!!samp.callNative("IsPlayerWidescreenToggled","i",e),en=(e,t)=>samp.callNative("GetPlayerSkillLevel","ii",e,t),tn=e=>samp.callNative("GetPlayerWeather","i",e),an=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}},nn=e=>samp.callNativeFloat("GetPlayerZAim","i",e),rn=e=>{const[t=0,a=0,i=0,n]=samp.callNative("GetPlayerSurfingOffsets","iFFF",e);return{fOffsetX:t,fOffsetY:a,fOffsetZ:i,ret:n}},sn=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}},ln=e=>samp.callNative("GetPlayerDialogID","i",e),on=e=>samp.callNative("GetPlayerSpectateID","i",e),dn=e=>samp.callNative("GetPlayerSpectateType","i",e),cn=(e,t)=>!!samp.callNative("SetPlayerGravity","if",e,t),_n=e=>samp.callNativeFloat("GetPlayerGravity","i",e),hn=e=>!!samp.callNative("IsPlayerSpawned","i",e),un=e=>!!samp.callNative("IsPlayerControllable","i",e),mn=e=>!!samp.callNative("IsPlayerCameraTargetEnabled","i",e),pn=(e,t)=>!!samp.callNative("TogglePlayerGhostMode","ii",e,t),fn=e=>!!samp.callNative("GetPlayerGhostMode","i",e),gn=e=>samp.callNative("GetPlayerBuildingsRemoved","i",e),Pn=(e,t)=>!!samp.callNative("RemovePlayerWeapon","ii",e,t),Sn=e=>!!samp.callNative("HidePlayerDialog","i",e),yn=e=>!!samp.callNative("IsPlayerUsingOfficialClient","i",e),En=(e,t)=>!!samp.callNative("AllowPlayerTeleport","ii",e,t),In=e=>!!samp.callNative("IsPlayerTeleportAllowed","i",e),An=(e,t)=>!!samp.callNative("AllowPlayerWeapons","i",e,t),Cn=e=>!!samp.callNative("ArePlayerWeaponsAllowed","i",e),Nn=(e,t,a,i)=>!!samp.callNative("GameTextForPlayer","iaii",e,t,a,i),Tn=(e,t)=>!!samp.callNative("HasGameText","ii",e,t),Dn=(e,t,a,i)=>!!samp.callNative("SendDeathMessageToPlayer","iiii",e,t,a,i),vn=(e,t)=>!!samp.callNative("HideGameTextForPlayer","ii",e,t),wn=e=>!!samp.callNative("IsPlayerNPC","i",e),Rn=(e,t,a,i)=>!!samp.callNative("SetPlayerPos","ifff",e,t,a,i),Ln=(e,t,a,i)=>!!samp.callNative("SetPlayerPosFindZ","ifff",e,t,a,i),bn=e=>{const[t,a,i,n]=samp.callNative("GetPlayerPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},On=(e,t)=>!!samp.callNative("SetPlayerFacingAngle","if",e,t),Gn=e=>{const[t,a]=samp.callNative("GetPlayerFacingAngle","iF",e);return{angle:t,ret:a}},Fn=(e,t,a,i,n)=>!!samp.callNative("IsPlayerInRangeOfPoint","iffff",e,t,a,i,n),Bn=(e,t,a,i)=>samp.callNativeFloat("GetPlayerDistanceFromPoint","ifff",e,t,a,i),xn=(e,t)=>!!samp.callNative("IsPlayerStreamedIn","ii",e,t),kn=(e,t)=>!!samp.callNative("SetPlayerInterior","ii",e,t),Mn=e=>samp.callNative("GetPlayerInterior","i",e),Vn=(e,t)=>!!samp.callNative("SetPlayerHealth","if",e,t),Hn=e=>{const[t,a]=samp.callNative("GetPlayerHealth","iF",e);return{health:t,ret:a}},Un=(e,t)=>!!samp.callNative("SetPlayerArmour","if",e,t),Wn=e=>{const[t,a]=samp.callNative("GetPlayerArmour","iF",e);return{armour:t,ret:a}},jn=(e,t,a)=>!!samp.callNative("SetPlayerAmmo","iii",e,t,a),Kn=e=>samp.callNative("GetPlayerAmmo","i",e),Zn=e=>samp.callNative("GetPlayerWeaponState","i",e),Xn=e=>samp.callNative("GetPlayerTargetPlayer","i",e),Yn=(e,t)=>{samp.callNative("SetPlayerTeam","ii",e,t)},zn=e=>samp.callNative("GetPlayerTeam","i",e),$n=(e,t)=>!!samp.callNative("SetPlayerScore","ii",e,t),Jn=e=>samp.callNative("GetPlayerScore","i",e),Qn=e=>samp.callNative("GetPlayerDrunkLevel","i",e),qn=(e,t)=>!!samp.callNative("SetPlayerDrunkLevel","ii",e,t),er=(e,t)=>!!samp.callNative("SetPlayerColor","ii",e,I(t)),tr=e=>samp.callNative("GetPlayerColor","i",e),ar=(e,t)=>!!samp.callNative("SetPlayerSkin","ii",e,t),ir=e=>samp.callNative("GetPlayerSkin","i",e),nr=(e,t,a)=>!!samp.callNative("GivePlayerWeapon","iii",e,t,a),rr=e=>!!samp.callNative("ResetPlayerWeapons","i",e),sr=(e,t)=>!!samp.callNative("SetPlayerArmedWeapon","ii",e,t),lr=(e,t)=>{const[a,i,n]=samp.callNative("GetPlayerWeaponData","iiII",e,t);return{weapons:a,ammo:i,ret:n}},or=(e,t)=>!!samp.callNative("GivePlayerMoney","ii",e,t),dr=e=>!!samp.callNative("ResetPlayerMoney","i",e),cr=e=>samp.callNative("GetPlayerMoney","i",e),_r=e=>samp.callNative("GetPlayerState","i",e),hr=e=>samp.callNative("GetPlayerPing","i",e),ur=e=>samp.callNative("GetPlayerWeapon","i",e),mr=e=>{const[t,a,i,n]=samp.callNative("GetPlayerKeys","iIII",e);return{keys:t,upDown:a,leftRight:i,ret:n}},pr=(e,t,a)=>!!samp.callNative("SetPlayerTime","iii",e,t,a),fr=e=>{const[t,a,i]=samp.callNative("GetPlayerTime","iII",e);return{hour:t,minute:a,ret:i}},gr=(e,t)=>!!samp.callNative("TogglePlayerClock","ii",e,t),Pr=(e,t)=>!!samp.callNative("SetPlayerWeather","ii",e,t),Sr=e=>!!samp.callNative("ForceClassSelection","i",e),yr=(e,t)=>!!samp.callNative("SetPlayerWantedLevel","ii",e,t),Er=e=>samp.callNative("GetPlayerWantedLevel","i",e),Ir=(e,t)=>!!samp.callNative("SetPlayerFightingStyle","ii",e,t),Ar=e=>samp.callNative("GetPlayerFightingStyle","i",e),Cr=(e,t,a,i)=>!!samp.callNative("SetPlayerVelocity","ifff",e,t,a,i),Nr=e=>{const[t,a,i,n]=samp.callNative("GetPlayerVelocity","iFFF",e);return{x:t,y:a,z:i,ret:n}},Tr=(e,t,a)=>!!samp.callNative("PlayCrimeReportForPlayer","iii",e,t,a),Dr=(e,t,a,i,n,r,s=!1)=>!!samp.callNative("PlayAudioStreamForPlayer","isffffi",e,t,a,i,n,r,s),vr=e=>!!samp.callNative("StopAudioStreamForPlayer","i",e),wr=(e,t)=>!!samp.callNative("SetPlayerShopName","is",e,t),Rr=(e,t,a)=>!!samp.callNative("SetPlayerSkillLevel","iii",e,t,a),Lr=e=>samp.callNative("GetPlayerSurfingVehicleID","i",e),br=e=>samp.callNative("GetPlayerSurfingObjectID","i",e),Or=e=>samp.callNative("GetPlayerSurfingPlayerObjectID","i",e),Gr=(e,t,a,i,n,r)=>!!samp.callNative("RemoveBuildingForPlayer","iiffff",e,t,a,i,n,r),Fr=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}},Br=(e,t,a)=>!!samp.callNative("PutPlayerInVehicle","iii",e,t,a),xr=e=>samp.callNative("GetPlayerVehicleID","i",e),kr=e=>samp.callNative("GetPlayerVehicleSeat","i",e),Mr=e=>!!samp.callNative("RemovePlayerFromVehicle","i",e),Vr=(e,t)=>!!samp.callNative("TogglePlayerControllable","ii",e,t),Hr=(e,t,a,i,n)=>!!samp.callNative("PlayerPlaySound","iifff",e,t,a,i,n),Ur=(e,t,a,i,n,r,s,l,o,d)=>!!samp.callNative("ApplyAnimation","issfiiiiii",e,t,a,i,n,r,s,l,o,d),Wr=(e,t)=>!!samp.callNative("ClearAnimations","ii",e,t),jr=e=>samp.callNative("GetPlayerAnimationIndex","i",e),Kr=e=>samp.callNative("GetPlayerSpecialAction","i",e),Zr=(e,t)=>!!samp.callNative("SetPlayerSpecialAction","ii",e,t),Xr=(e,t)=>!!samp.callNative("DisableRemoteVehicleCollisions","ii",e,t),Yr=(e,t)=>!!samp.callNative("SetPlayerVirtualWorld","ii",e,t),zr=e=>samp.callNative("GetPlayerVirtualWorld","i",e),$r=(e,t)=>!!samp.callNative("EnableStuntBonusForPlayer","ii",e,t),Jr=e=>samp.callNative("GetPlayerCustomSkin","i",e),Qr=(e,t,a,i,n,r)=>!!samp.callNative("CreateExplosionForPlayer","ifffif",e,t,a,i,n,r),qr=(e,t,a)=>!!samp.callNative("StartRecordingPlayerData","iis",e,t,a),es=e=>!!samp.callNative("StopRecordingPlayerData","i",e),ts=(e,t)=>!!samp.callNative("TogglePlayerSpectating","ii",e,t),as=(e,t,a)=>!!samp.callNative("PlayerSpectatePlayer","iii",e,t,a),is=(e,t,a)=>!!samp.callNative("PlayerSpectateVehicle","iii",e,t,a),ns=e=>!!samp.callNative("IsPlayerConnected","i",e),rs=(e,t)=>!!samp.callNative("IsPlayerInVehicle","ii",e,t),ss=e=>!!samp.callNative("IsPlayerInAnyVehicle","i",e),ls=(e,t,a,i,n)=>!!samp.callNative("SetPlayerWorldBounds","iffff",e,t,a,i,n),os=e=>!!samp.callNative("ClearPlayerWorldBounds","i",e),ds=(e,t,a)=>!!samp.callNative("SetPlayerMarkerForPlayer","iii",e,t,I(a));function cs(e,t){return samp.callNative("GetPlayerMarkerForPlayer","ii",e,t)}const _s=(e,t,a)=>!!samp.callNative("ShowPlayerNameTagForPlayer","iii",e,t,a),hs=(e,t,a,i)=>!!samp.callNative("SetPlayerCameraPos","ifff",e,t,a,i),us=(e,t,a,i,n)=>!!samp.callNative("SetPlayerCameraLookAt","ifffi",e,t,a,i,n),ms=e=>!!samp.callNative("SetCameraBehindPlayer","i",e),ps=e=>{const[t,a,i,n]=samp.callNative("GetPlayerCameraPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},fs=e=>{const[t,a,i,n]=samp.callNative("GetPlayerCameraFrontVector","iFFF",e);return{x:t,y:a,z:i,ret:n}},gs=e=>samp.callNative("GetPlayerCameraMode","i",e),Ps=(e,t)=>!!samp.callNative("EnablePlayerCameraTarget","ii",e,t),Ss=e=>samp.callNative("GetPlayerCameraTargetVehicle","i",e),ys=e=>samp.callNative("GetPlayerCameraTargetPlayer","i",e),Es=e=>samp.callNativeFloat("GetPlayerCameraAspectRatio","i",e),Is=e=>samp.callNativeFloat("GetPlayerCameraZoom","i",e),As=(e,t,a,i,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraPos","iffffffii",e,t,a,i,n,r,s,l,o),Cs=(e,t,a,i,n,r,s,l,o)=>!!samp.callNative("InterpolateCameraLookAt","iffffffii",e,t,a,i,n,r,s,l,o),Ns=e=>!!samp.callNative("IsPlayerCuffed","i",e),Ts=e=>!!samp.callNative("IsPlayerInDriveByMode","i",e),Ds=e=>!!samp.callNative("IsPlayerUsingOmp","i",e),vs=(e,t)=>samp.callNative("StartRecordingPlayback","is",e,t),ws=()=>samp.callNative("StopRecordingPlayback",""),Rs=()=>samp.callNative("PauseRecordingPlayback",""),Ls=()=>samp.callNative("ResumeRecordingPlayback",""),bs=e=>samp.callNative("GetActorSkin","i",e),Os=(e,t)=>samp.callNative("SetActorSkin","ii",e,t),Gs=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}},Fs=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}},Bs=(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),xs=e=>{const[t=0,a=0,i]=samp.callNative("GetVehicleColor","iII",e);return{color1:t,color2:a,ret:i}},ks=e=>samp.callNative("GetVehiclePaintjob","i",e),Ms=e=>samp.callNative("GetVehicleInterior","i",e),Vs=e=>{const[t,a]=samp.callNative("GetVehicleNumberPlate","iSi",e,33);return{plate:t,ret:a}},Hs=(e,t)=>samp.callNative("SetVehicleRespawnDelay","ii",e,t),Us=e=>samp.callNative("GetVehicleRespawnDelay","i",e),Ws=e=>samp.callNative("GetVehicleCab","i",e),js=e=>samp.callNative("GetVehicleOccupiedTick","i",e),Ks=(e,t)=>samp.callNative("SetVehicleOccupiedTick","ii",e,t),Zs=e=>!!samp.callNative("HasVehicleBeenOccupied","i",e),Xs=e=>!!samp.callNative("IsVehicleOccupied","i",e),Ys=e=>samp.callNative("GetVehicleRespawnTick","i",e),zs=(e,t)=>samp.callNative("SetVehicleRespawnTick","ii",e,t),$s=e=>!!samp.callNative("IsVehicleDead","i",e),Js=(e,t)=>!!samp.callNative("SetVehicleDead","ii",e,t),Qs=(e,t)=>!!samp.callNative("SetVehicleBeenOccupied","ii",e,t),qs=(e,t)=>samp.callNative("ToggleVehicleSirenEnabled","ii",e,t),el=(e,t)=>samp.callNative("SetVehicleParamsSirenState","ii",e,t),tl=e=>!!samp.callNative("IsVehicleSirenEnabled","i",e),al=e=>samp.callNative("GetVehicleModelCount","i",e),il=e=>samp.callNative("GetVehicleLastDriver","i",e),nl=e=>samp.callNative("GetVehicleDriver","i",e),rl=()=>samp.callNative("GetVehicleModelsUsed",""),sl=e=>samp.callNative("GetVehicleSirenState","i",e),ll=e=>samp.callNative("GetVehicleLandingGearState","i",e),ol=e=>samp.callNativeFloat("GetVehicleHydraReactorAngle","i",e),dl=e=>samp.callNativeFloat("GetVehicleTrainSpeed","i",e),cl=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}},lt=e=>{const[t=0,a=0,i=0,n=0,r]=samp.callNative("GetRandomCarColPair","iIIII",e);return{color:[t,a,i,n],ret:r}},_l=(e,t=255)=>samp.callNative("CarColIndexToColour","ii",e,t),hl=(e,t,a,i,n,r,s,l,o)=>samp.callNative("CreateVehicle","iffffiiii",e,t,a,i,n,I(r),I(s),l,o),ul=e=>samp.callNative("DestroyVehicle","i",e),ml=(e,t)=>!!samp.callNative("IsVehicleStreamedIn","ii",e,t),pl=e=>{const[t,a,i,n]=samp.callNative("GetVehiclePos","iFFF",e);return{x:t,y:a,z:i,ret:n}},fl=(e,t,a,i)=>!!samp.callNative("SetVehiclePos","ifff",e,t,a,i),gl=e=>{const[t,a]=samp.callNative("GetVehicleZAngle","iF",e);return{angle:t,ret:a}},Pl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleRotationQuat","iFFFF",e);return{w:t,x:a,y:i,z:n,ret:r}},Sl=(e,t,a,i)=>samp.callNativeFloat("GetVehicleDistanceFromPoint","ifff",e,t,a,i),yl=(e,t)=>samp.callNative("SetVehicleZAngle","if",e,t),El=(e,t,a,i)=>samp.callNative("SetVehicleParamsForPlayer","iiii",e,t,a,i),Il=()=>samp.callNative("ManualVehicleEngineAndLights",""),Al=(e,t,a,i,n,r,s,l)=>samp.callNative("SetVehicleParamsEx","iiiiiiii",e,t,a,i,n,r,s,l),Cl=e=>samp.callNative("GetVehicleParamsEx","iIIIIIII",e),Nl=e=>samp.callNative("GetVehicleParamsSirenState","i",e),Tl=(e,t,a,i,n)=>samp.callNative("SetVehicleParamsCarDoors","iiiii",e,t,a,i,n),Dl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleParamsCarDoors","iIIII",e);return{driver:t,passenger:a,backLeft:i,backRight:n,ret:r}},vl=(e,t,a,i,n)=>samp.callNative("SetVehicleParamsCarWindows","iiiii",e,t,a,i,n),wl=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleParamsCarWindows","iIIII",e);return{driver:t,passenger:a,backLeft:i,backRight:n,ret:r}},Rl=e=>samp.callNative("SetVehicleToRespawn","i",e),Ll=(e,t)=>samp.callNative("LinkVehicleToInterior","ii",e,t),bl=(e,t)=>samp.callNative("AddVehicleComponent","ii",e,t),Ol=(e,t)=>samp.callNative("RemoveVehicleComponent","ii",e,t),Gl=(e,t,a)=>samp.callNative("ChangeVehicleColor","iii",e,I(t),I(a)),Fl=(e,t)=>samp.callNative("ChangeVehiclePaintjob","ii",e,t),Bl=(e,t)=>samp.callNative("SetVehicleHealth","if",e,t),xl=e=>{const[t,a]=samp.callNative("GetVehicleHealth","iF",e);return{health:t,ret:a}},kl=(e,t)=>samp.callNative("AttachTrailerToVehicle","ii",e,t),Ml=e=>samp.callNative("DetachTrailerFromVehicle","i",e),Vl=e=>!!samp.callNative("IsTrailerAttachedToVehicle","i",e),Hl=e=>samp.callNative("GetVehicleTrailer","i",e),Ul=(e,t)=>samp.callNative("SetVehicleNumberPlate","is",e,t),Wl=e=>samp.callNative("GetVehicleModel","i",e),jl=(e,t)=>samp.callNative("GetVehicleComponentInSlot","ii",e,t),Kl=e=>samp.callNative("GetVehicleComponentType","i",e),Zl=e=>samp.callNative("RepairVehicle","i",e),Xl=e=>{const[t,a,i,n]=samp.callNative("GetVehicleVelocity","iFFF",e);return{x:t,y:a,z:i,ret:n}},Yl=(e,t,a,i)=>!!samp.callNative("SetVehicleVelocity","ifff",e,t,a,i),zl=(e,t,a,i)=>!!samp.callNative("SetVehicleAngularVelocity","ifff",e,t,a,i),$l=e=>{const[t,a,i,n,r]=samp.callNative("GetVehicleDamageStatus","iIIII",e);return{panels:t,doors:a,lights:i,tires:n,ret:r}},Jl=(e,t,a,i,n)=>samp.callNative("UpdateVehicleDamageStatus","iiiii",e,t,a,i,n),Ql=(e,t)=>{const[a,i,n,r]=samp.callNative("GetVehicleModelInfo","iiFFF",e,t);return{x:a,y:i,z:n,ret:r}},ql=(e,t)=>samp.callNative("SetVehicleVirtualWorld","ii",e,t),eo=e=>samp.callNative("GetVehicleVirtualWorld","i",e),to=e=>!!samp.callNative("IsValidVehicle","i",e),ao=(e,t,a,i,n,r,s)=>samp.callNative("AddStaticVehicle","iffffii",e,t,a,i,n,I(r),I(s)),io=(e,t,a,i,n,r,s,l,o)=>samp.callNative("AddStaticVehicleEx","iffffiiii",e,t,a,i,n,I(r),I(s),l,o),no=e=>!!samp.callNative("ShowVehicle","i",e),ro=e=>!!samp.callNative("HideVehicle","i",e),so=e=>!!samp.callNative("IsVehicleHidden","i",e),lo=e=>!!samp.callNative("IsPlayerInModShop","i",e),oo=e=>samp.callNative("GetPlayerSirenState","i",e),co=e=>samp.callNative("GetPlayerLandingGearState","i",e),_o=e=>samp.callNative("GetPlayerHydraReactorAngle","i",e),ho=e=>samp.callNativeFloat("GetPlayerTrainSpeed","i",e),uo=(e,t)=>samp.callNative("GetVehicleOccupant","ii",e,t),ot=e=>samp.callNative("GetVehicleMaxPassengers","i",e),mo=e=>samp.callNative("CountVehicleOccupants","i",e),po=e=>!!samp.callNative("IsPlayerCheckpointActive","i",e),fo=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}},go=e=>!!samp.callNative("IsPlayerRaceCheckpointActive","i",e),Po=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}},So=e=>!!samp.callNative("IsMenuDisabled","i",e),yo=(e,t)=>!!samp.callNative("IsMenuRowDisabled","ii",e,t),Eo=(e,t)=>samp.callNative("GetMenuItems","ii",e,t),Io=e=>{const[t=0,a=0,i]=samp.callNative("GetMenuPos","iFF",e);return{fX:t,fY:a,ret:i}},Ao=e=>{const[t=0,a=0,i]=samp.callNative("GetMenuColumnWidth","iFF",e);return{fColumn1:t,fColumn2:a,ret:i}},Co=(e,t)=>{const[a,i]=samp.callNative("GetMenuColumnHeader","iiSi",e,t,31);return{header:a,ret:i}},No=(e,t,a)=>{const[i,n]=samp.callNative("GetMenuItem","iiiSi",e,t,a,31);return{item:i,ret:n}},To=(e,t,a,i,n,r)=>samp.callNative("CreateMenu","siffff",e,t,a,i,n,r),Do=e=>samp.callNative("DestroyMenu","i",e),vo=(e,t,a)=>samp.callNative("AddMenuItem","iis",e,t,a),wo=(e,t,a)=>samp.callNative("SetMenuColumnHeader","iis",e,t,a),Ro=(e,t)=>samp.callNative("ShowMenuForPlayer","ii",e,t),Lo=(e,t)=>samp.callNative("HideMenuForPlayer","ii",e,t),bo=e=>!!samp.callNative("IsValidMenu","i",e),Oo=e=>samp.callNative("DisableMenu","i",e),Go=(e,t)=>samp.callNative("DisableMenuRow","ii",e,t),Fo=e=>samp.callNative("GetPlayerMenu","i",e),Bo=e=>!!samp.callNative("IsValidGangZone","i",e),xo=(e,t)=>!!samp.callNative("IsPlayerInGangZone","ii",e,t),ko=(e,t)=>!!samp.callNative("IsGangZoneVisibleForPlayer","ii",e,t),Mo=(e,t)=>samp.callNative("GangZoneGetColorForPlayer","ii",e,t),Vo=(e,t)=>samp.callNative("GangZoneGetFlashColorForPlayer","ii",e,t),Ho=(e,t)=>!!samp.callNative("IsGangZoneFlashingForPlayer","ii",e,t),Uo=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}},Wo=(e,t)=>{samp.callNative("UseGangZoneCheck","ii",e,t)},jo=(e,t,a,i)=>samp.callNative("GangZoneCreate","ffff",e,t,a,i),Ko=e=>samp.callNative("GangZoneDestroy","i",e),Zo=(e,t,a)=>samp.callNative("GangZoneShowForPlayer","iii",e,t,I(a)),Xo=(e,t)=>samp.callNative("GangZoneShowForAll","ii",e,I(t)),Yo=(e,t)=>samp.callNative("GangZoneHideForPlayer","ii",e,t),zo=e=>samp.callNative("GangZoneHideForAll","i",e),$o=(e,t,a)=>samp.callNative("GangZoneFlashForPlayer","iii",e,t,I(a)),Jo=(e,t)=>samp.callNative("GangZoneFlashForAll","ii",e,I(t)),Qo=(e,t)=>samp.callNative("GangZoneStopFlashForPlayer","ii",e,t),qo=e=>samp.callNative("GangZoneStopFlashForAll","i",e),ed=(e,t,a,i,n)=>samp.callNative("CreatePlayerGangZone","iffff",e,t,a,i,n),td=(e,t)=>samp.callNative("PlayerGangZoneDestroy","ii",e,t),ad=(e,t,a)=>samp.callNative("PlayerGangZoneShow","iii",e,t,a),id=(e,t)=>samp.callNative("PlayerGangZoneHide","ii",e,t),nd=(e,t,a)=>samp.callNative("PlayerGangZoneFlash","iii",e,t,a),rd=(e,t)=>samp.callNative("PlayerGangZoneStopFlash","ii",e,t),sd=(e,t)=>!!samp.callNative("IsValidPlayerGangZone","ii",e,t),ld=(e,t)=>!!samp.callNative("IsPlayerInPlayerGangZone","ii",e,t),od=(e,t)=>!!samp.callNative("IsPlayerGangZoneVisible","ii",e,t),dd=(e,t)=>samp.callNative("PlayerGangZoneGetColor","ii",e,t),cd=(e,t)=>samp.callNative("PlayerGangZoneGetFlashColor","ii",e,t),_d=(e,t)=>!!samp.callNative("IsPlayerGangZoneFlashing","ii",e,t),hd=(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}},ud=(e,t,a)=>{samp.callNative("UsePlayerGangZoneCheck","iii",e,t,a)},md=e=>!!samp.callNative("IsValidTextDraw","i",e),pd=(e,t)=>!!samp.callNative("IsTextDrawVisibleForPlayer","ii",e,t),fd=e=>{const[t,a]=samp.callNative("TextDrawGetString","iSi",e,1024);return{str:t,ret:a}},gd=(e,t,a)=>{samp.callNative("TextDrawSetPos","iff",e,t,a)},Pd=e=>{const[t=0,a=0,i]=samp.callNative("TextDrawGetLetterSize","iFF",e);return{fX:t,fY:a,ret:i}},Sd=e=>{const[t=0,a=0,i]=samp.callNative("TextDrawGetTextSize","iFF",e);return{fX:t,fY:a,ret:i}},yd=e=>{const[t=0,a=0,i]=samp.callNative("TextDrawGetPos","iFF",e);return{fX:t,fY:a,ret:i}},Ed=e=>samp.callNative("TextDrawGetColor","i",e),Id=e=>samp.callNative("TextDrawGetBoxColor","i",e),Ad=e=>samp.callNative("TextDrawGetBackgroundColor","i",e),Cd=e=>samp.callNative("TextDrawGetShadow","i",e),Nd=e=>samp.callNative("TextDrawGetOutline","i",e),Td=e=>samp.callNative("TextDrawGetFont","i",e),Dd=e=>!!samp.callNative("TextDrawIsBox","i",e),vd=e=>!!samp.callNative("TextDrawIsProportional","i",e),wd=e=>!!samp.callNative("TextDrawIsSelectable","i",e),Rd=e=>samp.callNative("TextDrawGetAlignment","i",e),Ld=e=>samp.callNative("TextDrawGetPreviewModel","i",e),bd=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}},Od=e=>{const[t,a,i]=samp.callNative("TextDrawGetPreviewVehCol","iII",e);return{color1:t,color2:a,ret:i}},Gd=(e,t,a)=>{samp.callNative("TextDrawSetStringForPlayer","iia",e,t,a)},Fd=(e,t,a)=>samp.callNative("TextDrawCreate","ffa",e,t,a),Bd=e=>samp.callNative("TextDrawDestroy","i",e),xd=(e,t,a)=>samp.callNative("TextDrawLetterSize","iff",e,t,a),kd=(e,t,a)=>samp.callNative("TextDrawTextSize","iff",e,t,a),Md=(e,t)=>samp.callNative("TextDrawAlignment","ii",e,t),Vd=(e,t)=>!!samp.callNative("TextDrawColor","ii",e,I(t)),Hd=(e,t)=>samp.callNative("TextDrawUseBox","ii",e,t),Ud=(e,t)=>!!samp.callNative("TextDrawBoxColor","ii",e,I(t)),Wd=(e,t)=>samp.callNative("TextDrawSetShadow","ii",e,t),jd=(e,t)=>samp.callNative("TextDrawSetOutline","ii",e,t),Kd=(e,t)=>!!samp.callNative("TextDrawBackgroundColor","ii",e,I(t)),Zd=(e,t)=>samp.callNative("TextDrawFont","ii",e,t),Xd=(e,t)=>samp.callNative("TextDrawSetProportional","ii",e,t),Yd=(e,t)=>samp.callNative("TextDrawSetSelectable","ii",e,t),zd=(e,t)=>samp.callNative("TextDrawShowForPlayer","ii",e,t),$d=(e,t)=>samp.callNative("TextDrawHideForPlayer","ii",e,t),Jd=e=>samp.callNative("TextDrawShowForAll","i",e),Qd=e=>samp.callNative("TextDrawHideForAll","i",e),qd=(e,t)=>samp.callNative("TextDrawSetString","ia",e,t),ec=(e,t)=>samp.callNative("TextDrawSetPreviewModel","ii",e,t),tc=(e,t,a,i,n=1)=>{samp.callNative("TextDrawSetPreviewRot","iffff",e,t,a,i,n)},ac=(e,t,a)=>!!samp.callNative("TextDrawSetPreviewVehCol","iii",e,I(t),I(a)),ic=(e,t)=>{samp.callNative("SelectTextDraw","ii",e,I(t))},nc=e=>{samp.callNative("CancelSelectTextDraw","i",e)},rc=(e,t)=>!!samp.callNative("IsValidPlayerTextDraw","ii",e,t),sc=(e,t)=>!!samp.callNative("IsPlayerTextDrawVisible","ii",e,t),lc=(e,t)=>{const[a,i]=samp.callNative("PlayerTextDrawGetString","iiSi",e,t,1024);return{str:a,ret:i}},oc=(e,t,a,i)=>{samp.callNative("PlayerTextDrawSetPos","iiff",e,t,a,i)},dc=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetLetterSize","iiFF",e,t);return{fX:a,fY:i,ret:n}},cc=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetTextSize","iiFF",e,t);return{fX:a,fY:i,ret:n}},_c=(e,t)=>{const[a=0,i=0,n]=samp.callNative("PlayerTextDrawGetPos","iiFF",e,t);return{fX:a,fY:i,ret:n}},hc=(e,t)=>samp.callNative("PlayerTextDrawGetColor","ii",e,t),uc=(e,t)=>samp.callNative("PlayerTextDrawGetBoxColor","ii",e,t),mc=(e,t)=>samp.callNative("PlayerTextDrawGetBackgroundColor","ii",e,t),pc=(e,t)=>samp.callNative("PlayerTextDrawGetShadow","ii",e,t),fc=(e,t)=>samp.callNative("PlayerTextDrawGetOutline","ii",e,t),gc=(e,t)=>samp.callNative("PlayerTextDrawGetFont","ii",e,t),Pc=(e,t)=>!!samp.callNative("PlayerTextDrawIsBox","ii",e,t),Sc=(e,t)=>!!samp.callNative("PlayerTextDrawIsProportional","ii",e,t),yc=(e,t)=>!!samp.callNative("PlayerTextDrawIsSelectable","ii",e,t),Ec=(e,t)=>samp.callNative("PlayerTextDrawGetAlignment","ii",e,t),Ic=(e,t)=>samp.callNative("PlayerTextDrawGetPreviewModel","ii",e,t),Ac=(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}},Cc=(e,t)=>{const[a,i,n]=samp.callNative("PlayerTextDrawGetPreviewVehCol","iiII",e,t);return{color1:a,color2:i,ret:n}},Nc=(e,t,a,i)=>samp.callNative("CreatePlayerTextDraw","iffa",e,t,a,i),Tc=(e,t)=>{samp.callNative("PlayerTextDrawDestroy","ii",e,t)},Dc=(e,t,a,i)=>samp.callNative("PlayerTextDrawLetterSize","iiff",e,t,a,i),vc=(e,t,a,i)=>samp.callNative("PlayerTextDrawTextSize","iiff",e,t,a,i),wc=(e,t,a)=>samp.callNative("PlayerTextDrawAlignment","iii",e,t,a),Rc=(e,t,a)=>!!samp.callNative("PlayerTextDrawColor","iii",e,t,I(a)),Lc=(e,t,a)=>samp.callNative("PlayerTextDrawUseBox","iii",e,t,a),bc=(e,t,a)=>!!samp.callNative("PlayerTextDrawBoxColor","iii",e,t,I(a)),Oc=(e,t,a)=>samp.callNative("PlayerTextDrawSetShadow","iii",e,t,a),Gc=(e,t,a)=>samp.callNative("PlayerTextDrawSetOutline","iii",e,t,a),Fc=(e,t,a)=>!!samp.callNative("PlayerTextDrawBackgroundColor","iii",e,t,I(a)),Bc=(e,t,a)=>samp.callNative("PlayerTextDrawFont","iii",e,t,a),xc=(e,t,a)=>samp.callNative("PlayerTextDrawSetProportional","iii",e,t,a),kc=(e,t,a)=>samp.callNative("PlayerTextDrawSetSelectable","iii",e,t,a),Mc=(e,t)=>samp.callNative("PlayerTextDrawShow","ii",e,t),Vc=(e,t)=>samp.callNative("PlayerTextDrawHide","ii",e,t),Hc=(e,t,a)=>samp.callNative("PlayerTextDrawSetString","iia",e,t,a),Uc=(e,t,a)=>samp.callNative("PlayerTextDrawSetPreviewModel","iii",e,t,a),Wc=(e,t,a,i,n,r)=>samp.callNative("PlayerTextDrawSetPreviewRot","iiffff",e,t,a,i,n,r),jc=(e,t,a,i)=>!!samp.callNative("PlayerTextDrawSetPreviewVehCol","iiii",e,t,a,i),Kc=(e,t)=>!!samp.callNative("EditAttachedObject","ii",e,t),Zc=e=>!!samp.callNative("BeginObjectSelecting","i",e),Xc=e=>!!samp.callNative("EndObjectEditing","i",e),Yc=e=>!!samp.callNative("SetObjectsDefaultCameraCol","i",e),zc=(e,t,a,i,n)=>samp.callNative("AddSimpleModel","iiiss",e,t,a,i,n),$c=(e,t,a,i,n,r,s)=>samp.callNative("AddSimpleModelTimed","iiissii",e,t,a,i,n,r,s),Jc=(e,t)=>samp.callNative("RedirectDownload","is",e,t),Qc=e=>{const[t,a]=samp.callNative("FindModelFileNameFromCRC","iSi",e,255);return{name:t,ret:a}},qc=e=>{const[t,a]=samp.callNative("FindTextureFileNameFromCRC","iSi",e,255);return{name:t,ret:a}},e_=(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}},t_=(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,I(g),I(f)),a_=(e,t)=>samp.callNative("RemovePlayerAttachedObject","ii",e,t),i_=(e,t)=>!!samp.callNative("IsPlayerAttachedObjectSlotUsed","ii",e,t),dt=e=>!!samp.callNative("IsValidCustomModel","i",e),n_=e=>{if(!dt(e))return null;const[t,a,i]=samp.callNative("GetCustomModePath","iSiSi",e,255,255);return{dffPath:t,txdPath:a,ret:i}};var ct=(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))(ct||{}),_t=(e=>(e[e.SCOREBOARD=0]="SCOREBOARD",e))(_t||{}),We=(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))(We||{}),ht=(e=>(e[e.CANCEL=0]="CANCEL",e[e.FINAL=1]="FINAL",e[e.UPDATE=2]="UPDATE",e))(ht||{}),ut=(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))(ut||{}),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||{}),mt=(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))(mt||{}),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||{}),pt=(e=>(e[e.OFF=0]="OFF",e[e.GLOBAL=1]="GLOBAL",e[e.STREAMED=2]="STREAMED",e))(pt||{}),ft=(e=>(e[e.NONE=1]="NONE",e[e.DRIVER=2]="DRIVER",e[e.ONFOOT=3]="ONFOOT",e))(ft||{}),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||{}),gt=(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))(gt||{}),Ge=(e=>(e[e.AUTO=-1]="AUTO",e[e.WALK=.1552086]="WALK",e[e.JOG=.56444]="JOG",e[e.SPRINT=.926784]="SPRINT",e))(Ge||{}),Pt=(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))(Pt||{}),St=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(St||{}),yt=(e=>(e[e.GLOBAL_OBJECT=1]="GLOBAL_OBJECT",e[e.PLAYER_OBJECT=2]="PLAYER_OBJECT",e))(yt||{}),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||{}),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||{}),At=(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))(At||{}),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||{}),Ct=(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))(Ct||{}),Nt=(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))(Nt||{}),Tt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.ALL=1]="ALL",e[e.OTHER=2]="OTHER",e))(Tt||{}),je=(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))(je||{}),Ee=(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))(Ee||{}),Dt=(e=>(e[e.LEFT=1]="LEFT",e[e.CENTER=2]="CENTER",e[e.RIGHT=3]="RIGHT",e))(Dt||{}),vt=(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))(vt||{}),wt=(e=>(e[e.UNSET=-1]="UNSET",e[e.OFF=0]="OFF",e[e.ON=1]="ON",e))(wt||{}),Rt=(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))(Rt||{}),Lt=(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))(Lt||{}),bt=(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))(bt||{}),Ot=(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))(Ot||{}),Gt=(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))(Gt||{}),Ke=(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))(Ke||{}),Ft=(e=>(e[e.NONE=0]="NONE",e[e.DRIVER=1]="DRIVER",e[e.ONFOOT=2]="ONFOOT",e))(Ft||{}),Bt=(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))(Bt||{}),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||{}),xt=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHt=2]="RIGHt",e))(xt||{}),Ze=(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))(Ze||{});const r_=e=>samp.callNative("DestroyDynamic3DTextLabel","i",e),s_=e=>!!samp.callNative("IsValidDynamic3DTextLabel","i",e),l_=(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),o_=e=>samp.callNative("DestroyDynamicActor","i",e),d_=e=>!!samp.callNative("IsValidDynamicActor","i",e),c_=(e,t)=>!!samp.callNative("IsDynamicActorStreamedIn","ii",e,t),__=e=>samp.callNative("GetDynamicActorVirtualWorld","i",e),h_=(e,t)=>samp.callNative("SetDynamicActorVirtualWorld","ii",e,t),u_=(e,t,a,i,n,r,s,l,o)=>samp.callNative("ApplyDynamicActorAnimation","issfiiiii",e,t,a,i,n,r,s,l,o),m_=e=>samp.callNative("ClearDynamicActorAnimations","i",e),p_=e=>{const[t,a]=samp.callNative("GetDynamicActorFacingAngle","iF",e);return{angle:t,ret:a}},f_=(e,t)=>samp.callNative("SetDynamicActorFacingAngle","if",e,t),g_=e=>{const[t,a,i,n]=samp.callNative("GetDynamicActorPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},P_=(e,t,a,i)=>samp.callNative("SetDynamicActorPos","ifff",e,t,a,i),S_=e=>{const[t,a]=samp.callNative("GetDynamicActorHealth","iF",e);return{health:t,ret:a}},y_=(e,t)=>samp.callNative("SetDynamicActorHealth","if",e,t),E_=(e,t=!0)=>samp.callNative("SetDynamicActorInvulnerable","ii",e,t),I_=e=>!!samp.callNative("IsDynamicActorInvulnerable","i",e),A_=e=>samp.callNative("GetPlayerTargetDynamicActor","i",e),C_=e=>samp.callNative("GetPlayerCameraTargetDynActor","i",e),N_=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}},T_=(e,t,a,i=-1,n=-1,r=-1)=>samp.callNative("CreateDynamicCircle","fffiii",e,t,a,i,n,r),D_=(e,t,a,i,n,r=-1,s=-1,l=-1)=>samp.callNative("CreateDynamicCylinder","fffffiii",e,t,a,i,n,r,s,l),v_=(e,t,a,i,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicSphere","ffffiii",e,t,a,i,n,r,s),w_=(e,t,a,i,n=-1,r=-1,s=-1)=>samp.callNative("CreateDynamicRectangle","ffffiii",e,t,a,i,n,r,s),R_=(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),L_=(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),b_=e=>samp.callNative("DestroyDynamicArea","i",e),O_=e=>!!samp.callNative("IsValidDynamicArea","i",e),G_=e=>samp.callNative("GetDynamicAreaType","i",e),F_=e=>{const[t,a]=samp.callNative("GetDynamicPolygonPoints","iAi",e,kt(e));return{points:t,ret:a}},kt=e=>samp.callNative("GetDynamicPolygonNumberPoints","i",e),B_=(e,t,a=!1)=>!!samp.callNative("IsPlayerInDynamicArea","iii",e,t,a),x_=(e,t=!1)=>!!samp.callNative("IsPlayerInAnyDynamicArea","ii",e,t),k_=(e,t=!1)=>!!samp.callNative("IsAnyPlayerInDynamicArea","ii",e,t),M_=(e=!1)=>!!samp.callNative("IsAnyPlayerInAnyDynamicArea","i",e),V_=e=>{const[t,a]=samp.callNative("GetPlayerDynamicAreas","iAi",e,Mt(e));return{areas:t,ret:a}},Mt=e=>samp.callNative("GetPlayerNumberDynamicAreas","i",e),H_=(e,t,a,i)=>!!samp.callNative("IsPointInDynamicArea","ifff",e,t,a,i),U_=(e,t,a)=>!!samp.callNative("IsPointInAnyDynamicArea","fff",e,t,a),W_=(e,t,a,i,n,r,s)=>!!samp.callNative("IsLineInDynamicArea","iffffff",e,t,a,i,n,r,s),j_=(e,t,a,i,n,r)=>!!samp.callNative("IsLineInAnyDynamicArea","ffffff",e,t,a,i,n,r),K_=(e,t,a)=>{const[i,n]=samp.callNative("GetDynamicAreasForPoint","fffAi",e,t,a,Vt(e,t,a));return{areas:i,ret:n}},Vt=(e,t,a)=>samp.callNative("GetNumberDynamicAreasForPoint","fff",e,t,a),Z_=(e,t,a,i,n,r)=>{const[s,l]=samp.callNative("GetDynamicAreasForLine","ffffffAi",e,t,a,i,n,r,Ht(e,t,a,i,n,r));return{areas:s,ret:l}},Ht=(e,t,a,i,n,r)=>samp.callNative("GetNumberDynamicAreasForLine","ffffff",e,t,a,i,n,r),X_=(e,t,a=xe.DYNAMIC,i=65535,n=0,r=0,s=0)=>samp.callNative("AttachDynamicAreaToObject","iiiifff",e,t,a,i,n,r,s),Y_=(e,t,a=0,i=0,n=0)=>samp.callNative("AttachDynamicAreaToPlayer","iifff",e,t,a,i,n),z_=(e,t,a=0,i=0,n=0)=>samp.callNative("AttachDynamicAreaToVehicle","iifff",e,t,a,i,n),$_=(e,t)=>samp.callNative("ToggleDynAreaSpectateMode","ii",e,t),J_=e=>!!samp.callNative("IsToggleDynAreaSpectateMode","i",e),Q_=(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),Ut=e=>samp.callNative("DestroyDynamicCP","i",e),Wt=e=>!!samp.callNative("IsValidDynamicCP","i",e),q_=(e,t,a)=>samp.callNative("TogglePlayerDynamicCP","iii",e,t,a),eh=(e,t)=>samp.callNative("TogglePlayerAllDynamicCPs","ii",e,t),th=(e,t)=>!!samp.callNative("IsPlayerInDynamicCP","ii",e,t),ah=e=>samp.callNative("GetPlayerVisibleDynamicCP","i",e),ih=(e,t,a)=>{const[i,n]=samp.callNative("Streamer_GetFloatData","iiiF",e,t,a);return{val:i,ret:n}},nh=(e,t,a,i)=>samp.callNative("Streamer_SetFloatData","iiif",e,t,a,i),rh=(e,t,a)=>samp.callNative("Streamer_GetIntData","iii",e,t,a),sh=(e,t,a,i)=>samp.callNative("Streamer_SetIntData","iiii",e,t,a,i),lh=(e,t,a)=>{const[i,n]=samp.callNative("Streamer_GetArrayData","iiiAi",e,t,a,jt(e,t,a));return{arrayData:i,ret:n}},oh=(e,t,a,i)=>samp.callNative("Streamer_SetArrayData","iiiai",e,t,a,i,i.length),dh=(e,t,a,i)=>!!samp.callNative("Streamer_IsInArrayData","iiii",e,t,a,i),ch=(e,t,a,i)=>samp.callNative("Streamer_AppendArrayData","iiii",e,t,a,i),_h=(e,t,a,i)=>samp.callNative("Streamer_RemoveArrayData","iiii",e,t,a,i),jt=(e,t,a)=>samp.callNative("Streamer_GetArrayDataLength","iii",e,t,a),hh=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 uh=(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),mh=e=>samp.callNative("DestroyDynamicMapIcon","i",e),ph=e=>!!samp.callNative("IsValidDynamicMapIcon","i",e),fh=(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),gh=(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),Ph=(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),Sh=(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),yh=(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),Eh=(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),Ih=(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),Ah=(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),Ch=(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),Nh=(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),Th=(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),Dh=(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),vh=(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}},wh=(e,t,a,i)=>samp.callNative("Streamer_ToggleItem","iiii",e,t,a,i),Rh=(e,t,a)=>!!samp.callNative("Streamer_IsToggleItem","iii",e,t,a),Lh=(e,t,a,i=[-1])=>samp.callNative("Streamer_ToggleAllItems","iiiai",e,t,a,i,i.length),bh=(e,t,a)=>samp.callNative("Streamer_GetItemInternalID","iii",e,t,a),Oh=(e,t,a)=>samp.callNative("Streamer_GetItemStreamerID","iii",e,t,a),Gh=(e,t,a)=>!!samp.callNative("Streamer_IsItemVisible","iii",e,t,a),Fh=(e,t,a=1)=>samp.callNative("Streamer_DestroyAllVisibleItems","iii",e,t,a),Bh=(e,t,a=1)=>samp.callNative("Streamer_CountVisibleItems","iii",e,t,a),xh=(e,t=1)=>samp.callNative("Streamer_DestroyAllItems","ii",e,t),kh=(e,t=1)=>samp.callNative("Streamer_CountItems","ii",e,t),Mh=(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)},Vh=(e,t,a=32)=>{const[i=[],n=0]=samp.callNative("Streamer_GetAllVisibleItems","iiAi",e,t,a);return i.slice(0,n)},Hh=(e,t)=>{const[a,i,n,r]=samp.callNative("Streamer_GetItemPos","iiFFF",e,t);return{x:a,y:i,z:n,ret:r}},Uh=(e,t,a,i,n)=>samp.callNative("Streamer_SetItemPos","iifff",e,t,a,i,n),Wh=(e,t)=>{const[a,i,n,r]=samp.callNative("Streamer_GetItemOffset","iiFFF",e,t);return{x:a,y:i,z:n,ret:r}},jh=(e,t,a,i,n)=>samp.callNative("Streamer_SetItemOffset","iifff",e,t,a,i,n),Kh=(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),Zh=e=>samp.callNative("DestroyDynamicObject","i",e),Xh=e=>!!samp.callNative("IsValidDynamicObject","i",e),Yh=e=>{const[t,a,i,n]=samp.callNative("GetDynamicObjectPos","iFFF",e);return{x:t,y:a,z:i,ret:n}},zh=(e,t,a,i)=>samp.callNative("SetDynamicObjectPos","ifff",e,t,a,i),$h=e=>{const[t,a,i,n]=samp.callNative("GetDynamicObjectRot","iFFF",e);return{rx:t,ry:a,rz:i,ret:n}},Jh=(e,t,a,i)=>samp.callNative("SetDynamicObjectRot","ifff",e,t,a,i),Qh=(e,t,a,i,n,r=-1e3,s=-1e3,l=-1e3)=>samp.callNative("MoveDynamicObject","ifffffff",e,t,a,i,n,r,s,l),qh=e=>samp.callNative("StopDynamicObject","i",e),eu=e=>!!samp.callNative("IsDynamicObjectMoving","i",e),tu=(e,t)=>samp.callNative("AttachCameraToDynamicObject","ii",e,t),au=(e,t,a,i,n,r,s,l,o=!0)=>samp.callNative("AttachDynamicObjectToObject","iiffffffi",e,t,a,i,n,r,s,l,o),iu=(e,t,a,i,n,r,s,l)=>samp.callNative("AttachDynamicObjectToPlayer","iiffffff",e,t,a,i,n,r,s,l),nu=(e,t,a,i,n,r,s,l)=>samp.callNative("AttachDynamicObjectToVehicle","iiffffff",e,t,a,i,n,r,s,l),ru=(e,t)=>samp.callNative("EditDynamicObject","ii",e,t),su=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialUsed","ii",e,t),lu=(e,t)=>samp.callNative("RemoveDynamicObjectMaterial","ii",e,t),ou=(e,t,a,i,n,r=0)=>samp.callNative("SetDynamicObjectMaterial","iiissi",e,t,a,i,n,r),du=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialTextUsed","ii",e,t),cu=(e,t)=>samp.callNative("RemoveDynamicObjectMaterialText","ii",e,t),_u=e=>samp.callNative("GetPlayerCameraTargetDynObject","i",e),hu=e=>!!samp.callNative("SetDynamicObjectNoCameraCol","i",e),uu=e=>!!samp.callNative("GetDynamicObjectNoCameraCol","i",e),mu=(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),pu=e=>!!samp.callNative("DestroyDynamicPickup","i",e),fu=e=>!!samp.callNative("IsValidDynamicPickup","i",e),gu=(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),Pu=(e,t,a)=>samp.callNative("TogglePlayerDynamicRaceCP","iii",e,t,a),Su=(e,t)=>samp.callNative("TogglePlayerAllDynamicRaceCPs","ii",e,t),yu=(e,t)=>!!samp.callNative("IsPlayerInDynamicRaceCP","ii",e,t),Eu=e=>samp.callNative("GetPlayerVisibleDynamicRaceCP","i",e),Iu=()=>samp.callNative("Streamer_GetTickRate",""),Au=(e=50)=>samp.callNative("Streamer_SetTickRate","i",e),Cu=e=>samp.callNative("Streamer_GetPlayerTickRate","i",e),Nu=(e,t=50)=>samp.callNative("Streamer_SetPlayerTickRate","ii",e,t),Tu=(e=!1)=>samp.callNative("Streamer_ToggleChunkStream","i",e),Du=()=>!!samp.callNative("Streamer_IsToggleChunkStream",""),Kt=(e,t=-1)=>samp.callNative("Streamer_GetChunkTickRate","ii",e,t),Zt=(e,t,a=-1)=>samp.callNative("Streamer_SetChunkTickRate","iii",e,t,a),vu=e=>samp.callNative("Streamer_GetChunkSize","i",e),wu=(e,t)=>samp.callNative("Streamer_SetChunkSize","ii",e,t),Ru=e=>samp.callNative("Streamer_GetMaxItems","i",e),Lu=(e,t)=>samp.callNative("Streamer_SetMaxItems","ii",e,t),Xt=(e,t=-1)=>samp.callNative("Streamer_GetVisibleItems","ii",e,t),Yt=(e,t,a=-1)=>samp.callNative("Streamer_SetVisibleItems","iii",e,t,a),zt=(e,t=-1)=>{const[a,i]=samp.callNative("Streamer_GetRadiusMultiplier","iFi",e,t);return{multiplier:a,ret:i}},$t=(e,t,a=-1)=>samp.callNative("Streamer_SetRadiusMultiplier","ifi",e,t,a),bu=()=>{const[e,t]=samp.callNative("Streamer_GetTypePriority","Ai",Be.MAX_TYPES);return{priority:e,ret:t}},Ou=e=>samp.callNative("Streamer_SetTypePriority","ai",e,Be.MAX_TYPES),Gu=()=>{const[e,t]=samp.callNative("Streamer_GetCellDistance","F");return{distance:e,ret:t}},Fu=(e=600)=>samp.callNative("Streamer_SetCellDistance","f",e),Bu=()=>{const[e,t]=samp.callNative("Streamer_GetCellSize","F");return{size:e,ret:t}},xu=(e=300)=>samp.callNative("Streamer_SetCellSize","f",e),ku=(e,t,a)=>samp.callNative("Streamer_ToggleItemStatic","iii",e,t,a),Mu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemStatic","ii",e,t),Vu=(e,t,a)=>samp.callNative("Streamer_ToggleItemInvAreas","iii",e,t,a),Hu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemInvAreas","ii",e,t),Uu=(e,t,a)=>samp.callNative("Streamer_ToggleItemCallbacks","iii",e,t,a),Wu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemCallbacks","ii",e,t),ju=e=>samp.callNative("Streamer_ToggleErrorCallback","i",e),Ku=()=>!!samp.callNative("Streamer_IsToggleErrorCallback",""),Zu=e=>samp.callNative("Streamer_AmxUnloadDestroyItems","i",e),Xu=()=>samp.callNative("Streamer_ProcessActiveItems",""),Yu=(e,t)=>samp.callNative("Streamer_ToggleIdleUpdate","ii",e,t),zu=e=>!!samp.callNative("Streamer_IsToggleIdleUpdate","i",e),$u=(e,t)=>samp.callNative("Streamer_ToggleCameraUpdate","ii",e,t),Ju=e=>!!samp.callNative("Streamer_IsToggleCameraUpdate","i",e),Qu=(e,t,a)=>samp.callNative("Streamer_ToggleItemUpdate","iii",e,t,a),qu=(e,t)=>!!samp.callNative("Streamer_IsToggleItemUpdate","ii",e,t),em=()=>{const[e,t]=samp.callNative("Streamer_GetLastUpdateTime","F");return{time:e,ret:t}},tm=(e,t=-1)=>samp.callNative("Streamer_Update","ii",e,t),am=(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),Jt=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}]]]),Xe=e=>{const t=Jt.get(e.toUpperCase());return t===void 0?!1:t},Ye=(e,t)=>{const a=Xe(e);if(a)return t==="null"?!0:a.some(i=>i.n===t)},im=(e,t)=>{const a=Xe(e);if(a)return a.find(i=>i.n===t)?.d},te=(e,t)=>{const a=t.replace("-","")==="utf8"?e:E.encodeToBuf(e,t);return[a instanceof Array?"a":"s",a]},Qt=(e,t,a)=>{const i=te(a,e.charset);return samp.callNative("SendClientMessage",`ii${i[0]}`,e.id,I(t),i[1])},nm=(e,t,a)=>(e.forEach(i=>Qt(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])},rm=(e,t,a)=>(e.forEach(i=>{qt(i,t,a)}),1),sm=(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)},lm=e=>{const[t,a]=samp.callNative("GetPlayerName","iAi",e.id,V.MAX_PLAYER_NAME);return{name:E.decodeFromBuf(E.getValidStr(t),e.charset),ret:a}},om=(e,t)=>samp.callNative("SetPlayerName","ia",e.id,E.encodeToBuf(t,e.charset)),dm=(e,t,a)=>{const i=E.encodeToBuf(t,a);return samp.callNative("BanEx","ia",e,i)},cm=(e,t="utf8")=>{const[a,i]=te(e,t);return samp.callNative("SendRconCommand",a,i)},_m=(e,t,a,i,n,r,s,l,o,d,c,u,p,g,f,y)=>{const w=E.encodeToBuf(t,e);return samp.callNative("CreateDynamic3DTextLabel","aiffffiiiiiifii",w,a,i,n,r,s,l,o,d,c,u,p,g,f,y)},hm=(e,t,a,i,n,r,s,l,o,d,c,u,p,g,f,y)=>{const w=E.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)},um=(e,t,a,i)=>{const n=E.encodeToBuf(a,i);return samp.callNative("UpdateDynamic3DTextLabelText","iia",e,t,n)},mm=(e,t)=>{const[a,i]=samp.callNative("GetDynamic3DTextLabelText","iAi",e,1024);return{text:E.decodeFromBuf(E.getValidStr(a),t),ret:i}},pm=(e,t,a,i,n,r,s,l,o,d,c)=>{const u=E.encodeToBuf(i,e),p=E.encodeToBuf(r,e);return samp.callNative("SetDynamicObjectMaterialText","iiaiaiiiii",t,a,u,n,p,s,l,o,d,c)},fm=(e,t,a="utf8")=>{const[i,n,r,s,l]=samp.callNative("GetDynamicObjectMaterial","iiIAAIii",e,t,64,64);return{modelId:i,txdName:E.decodeFromBuf(E.getValidStr(n),a),textureName:E.decodeFromBuf(E.getValidStr(r),a),materialColor:s,ret:l}},gm=(e,t,a)=>{const[i,n,r,s,l,o,d,c,u]=samp.callNative("GetDynamicObjectMaterialText","iiAIAIIIIIii",e,t,2048,32),p=E.decodeFromBuf(i,a),g=E.decodeFromBuf(r,a);return{text:p,materialSize:n,fontFace:g,fontSize:s,bold:l,fontColor:o,backColor:d,textAlignment:c,ret:u}},Pm=(e,t,a,i,n,r)=>{const s=E.encodeToBuf(t,r);return!!samp.callNative("SetPlayerChatBubble","iaifi",e,s,I(a),i,n)},ae=Symbol(),U=new Map,K=new Map,Ie=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),Sm=(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},ym=(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,at=J|f,it=((J|M)&y)+y^y|J|M;let ge=f|~(it|y),Le=y⁢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|~(at|ge),f=ge&at}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},ea=(e,t)=>{if(e.length<t.length){const a=t;t=e,e=a}return t.length===0?e.length:e.length<=32?Sm(e,t):ym(e,t)},Em=(e,t)=>{let a=1/0,i=0;for(let n=0;n<t.length;n++){const r=ea(e,t[n]);r<a&&(a=r,i=n)}return t[i]},se=new Map,le=new Map,ta=/[^/\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"}},[Im,Am]=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}}}),[Cm,Nm]=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}}}),[Tm,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=Em(i,[...se.keys(),...le.keys()]),u=ea(i,c);return{suggestion:c,distance:u}}}}}),[Dm,vm]=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=E.encodeToBuf(n,"utf-8")):n=E.decodeFromBuf(t,a.charset),{player:a,buffer:i,cmdText:n}}}),[wm,Rm]=h({name:"OnPlayerCommandTextRaw",isNative:!1,defaultValue:!1,beforeEach(e,t,a){return{player:e,buffer:t,cmdText:a}}});function Lm(e){const t=[];let a="";for(let i=0;i<e.length;i++)a+=e[i]+" ",t.push(a.trimEnd());return t.reverse()}Dm(({player:e,buffer:t,cmdText:a,next:i})=>{const n=Rm(e,t,a);if(n)return n;const r=a.match(ta),s=Lm(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(!Am(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 Nm(e,u,a,t,l,o,d,c,p)?(i(),!0):we(e,ve.PERFORMED,...f)});function bm(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(ta));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:bm});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 vm(t.id,a)}}const[aa]=h({name:"OnClientCheckResponse",beforeEach(e,t,a,i){return{player:m.getInstance(e),actionId:t,memAddr:a,data:i}}}),[Om,Gm]=h({name:"OnPlayerLocaleChange",isNative:!1,beforeEach(e,t,a){return{player:e,newLocale:t,oldLocale:a}}}),[Fm,Bm]=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,Bm(this,t,a)}get locale(){return this._locale}set locale(t){const a=this._locale;this._locale=t,Gm(this,t,a)}sendClientMessage(t,a){return Qt(this,t,a)}static sendClientMessageToAll(t,a){nm(m.getInstances(),t,a)}sendMessageToPlayer(t,a){return qt(t,this.id,a)}sendMessageToAll(t){return rm(m.getInstances(),this.id,t)}isNpc(){return wn(this.id)}getFps(){return this.lastFps}getDrunkLevel(){return Qn(this.id)}setDrunkLevel(t){if(t<0||t>5e4)throw new Error("[Player]: player's drunk level ranges from 0 to 50000");return qn(this.id,t)}allowTeleport(t){return En(this.id,t)}isTeleportAllowed(){return In(this.id)}enableCameraTarget(t){return Ps(this.id,t)}enableStuntBonus(t){return $r(this.id,t)}getInterior(){return Mn(this.id)}setInterior(t){return kn(this.id,t)}showNameTag(t,a){return _s(this.id,t.id,a)}setColor(t){return er(this.id,t)}getColor(){return tr(this.id)}setMarker(t,a){ds(this.id,t.id,a)}getMarker(t){return cs(this.id,t.id)}resetMoney(){return dr(this.id)}getMoney(){return cr(this.id)}giveMoney(t){return or(this.id,t)}resetWeapons(){return rr(this.id)}spawn(){return Ti(this.id)}setHealth(t){return Vn(this.id,t)}getHealth(){return Hn(this.id)}toggleClock(t){return gr(this.id,t)}toggleControllable(t){return Vr(this.id,t)}toggleSpectating(t){return ts(this.id,t)}spectatePlayer(t,a=Fe.NORMAL){return as(this.id,t.id,a)}spectateVehicle(t,a=Fe.NORMAL){return is(this.id,t.id,a)}forceClassSelection(){return Sr(this.id)}kick(){return Mi(this.id)}ban(){return Vi(this.id)}banEx(t,a){return dm(this.id,t,a)}isAdmin(){return xi(this.id)}isInRangeOfPoint(t,a,i,n){return Fn(this.id,t,a,i,n)}isStreamedIn(t){return xn(this.id,t.id)}setSkin(t,a=!1){return!a&&(t<0||t>311||t===74)||this.getHealth().health<=0||this.isInAnyVehicle()||this.getSpecialAction()===je.DUCK?!1:ar(this.id,t)}getSkin(){return ir(this.id)}isInAnyVehicle(){return ss(this.id)}getSpecialAction(){return Kr(this.id)}setSpecialAction(t){return Zr(this.id,t)}setScore(t){return $n(this.id,t)}getScore(){return Jn(this.id)}getPing(){return hr(this.id)||0}setPos(t,a,i){return Rn(this.id,t,a,i)}getPos(){return bn(this.id)}isSpectating(){return this.getState()===ye.SPECTATING}isWasted(){return this.getState()===ye.WASTED}getState(){return _r(this.id)}getVersion(){return Ji(this.id)}setVirtualWorld(t){return Yr(this.id,t)}getVirtualWorld(){return zr(this.id)}removeFromVehicle(){return Mr(this.id)}setWantedLevel(t){if(t<0||t>6)throw new Error("[Player]: player's wanted level ranges from 0 to 6");return yr(this.id,t)}getWantedLevel(){return Er(this.id)}setFacingAngle(t){return On(this.id,t)}getFacingAngle(){return Gn(this.id)}setWeather(t){if(t<0||t>255)throw new Error("[Player]: The valid weather value is only 0 to 255");return Pr(this.id,t)}getWeather(){return tn(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 pr(this.id,t,a)}getTime(){return fr(this.id)}removeBuilding(t,a,i,n,r){return Gr(this.id,t,a,i,n,r)}setTeam(t){t<0||t>D.NO_TEAM||Yn(this.id,t)}getTeam(){return zn(this.id)}setSkillLevel(t,a){if(a<0||a>999)throw new Error("[Player]: The valid skill level is only 0 to 999");return Rr(this.id,t,a)}getName(){return lm(this)}setName(t){return om(this,t)}setVelocity(t,a,i){return Cr(this.id,t,a,i)}getVelocity(){return Nr(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:a,y:i,z:n}=this.getVelocity();return Ue(a,i,n)*t}getKeys(){return mr(this.id)}getIp(){return $i(this.id)}getFightingStyle(){return Ar(this.id)}setFightingStyle(t){return Ir(this.id,t)}setArmour(t){return Un(this.id,t)}getArmour(){return Wn(this.id)}setCameraBehind(){return ms(this.id)}setCameraPos(t,a,i){return hs(this.id,t,a,i)}setCameraLookAt(t,a,i,n=Se.CUT){return us(this.id,t,a,i,n)}getCameraAspectRatio(){return Es(this.id)}getCameraFrontVector(){return fs(this.id)}getCameraMode(){return gs(this.id)}getCameraPos(){return ps(this.id)}getCameraTargetPlayer(){const t=ys(this.id);return m.getInstances().find(a=>a.id===t)}getCameraTargetVehicle(){const t=Ss(this.id);return[...K.values()].find(a=>a.id===t)}getCameraZoom(){return Is(this.id)}playAudioStream(t,a=0,i=0,n=0,r=5){let s=!1;return(a!==0||i!==0||n!==0)&&(s=!0),Dr(this.id,t,a,i,n,r,s)}stopAudioStream(){return vr(this.id)}playSound(t,a=0,i=0,n=0){return Hr(this.id,t,a,i,n)}static getMaxPlayers(){return Xa()}playCrimeReport(t,a){if(a<3||a>22)throw new Error("[Player]: Available crime ids range from 3 to 22");return Tr(this.id,t.id,a)}interpolateCameraPos(t,a,i,n,r,s,l,o=Se.CUT){return As(this.id,t,a,i,n,r,s,l,o)}interpolateCameraLookAt(t,a,i,n,r,s,l,o=Se.CUT){return Cs(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 Qr(this.id,t,a,i,n,r)}static isConnected(t){return ns(t)}isConnected(){return m.isConnected(this.id)}disableRemoteVehicleCollisions(t){return Xr(this.id,t)}getVehicle(){if(!this.isInAnyVehicle())return;const t=xr(this.id);return[...K.values()].find(a=>a.id===t)}getVehicleSeat(){return kr(this.id)}getSurfingVehicle(){const t=Lr(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(!Ye(t,a))throw new Error(`[Player]: Invalid anim library or name ${t} ${a}`);return Ur(this.id,t,a,i,n,r,s,l,o,+d)}clearAnimations(t=!1){return Wr(this.id,t)}getAnimationIndex(){return jr(this.id)}getAnimationName(t=this.getAnimationIndex()){const[a,i]=ui(t);return{index:t,animLib:a,animName:i}}setShopName(t){return wr(this.id,t)}setPosFindZ(t,a,i){return Ln(this.id,t,a,i)}setWorldBounds(t,a,i,n){return ls(this.id,t,a,i,n)}clearWorldBounds(){return os(this.id)}setChatBubble(t,a,i,n,r=this.charset){return Pm(this.id,t,a,i,n,r)}getDistanceFromPoint(t,a,i){return Bn(this.id,t,a,i)}getCustomSkin(){return Jr(this.id)}getTargetPlayer(){const t=Xn(this.id);if(t!==D.PLAYER_ID)return m.getInstances().find(a=>a.id===t)}getLastShotVectors(){return Fr(this.id)}getWeapon(){return ur(this.id)}getWeaponData(t){return lr(this.id,t)}getWeaponState(){return Zn(this.id)}giveWeapon(t,a){return nr(this.id,t,a)}setAmmo(t,a){return jn(this.id,t,a)}getAmmo(){return Kn(this.id)}setArmedWeapon(t){return sr(this.id,t)}clearDeathMessage(){for(let t=0;t<5;t++)this.sendDeathMessageToPlayer(D.PLAYER_ID,D.PLAYER_ID,Ke.CONNECT)}sendDeathMessage(t,a){return Za(t===D.PLAYER_ID?t:t.id,this.id,a)}sendDeathMessageToPlayer(t,a,i){return Dn(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:Ni(this.id,t,a,i,n,r,s,l,o,d,c,u,p)}redirectDownload(t){return Jc(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=aa(({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),Zi(this.id,t,a,i,n)})}selectTextDraw(t){ic(this.id,t)}cancelSelectTextDraw(){nc(this.id)}beginObjectSelecting(){return Zc(this.id)}endObjectEditing(){return Xc(this.id)}getSurfingObject(){const t=br(this.id);if(t!==D.OBJECT_ID)return Z.get(t)}getSurfingPlayerObject(){const t=Or(this.id);if(t!==D.OBJECT_ID)return Z.get(t)}isAttachedObjectSlotUsed(t){return i_(this.id,t)}editAttachedObject(t){return Kc(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:t_(this.id,t,a,i,n,r,s,l,o,d,c,u,p,g,f)}removeAttachedObject(t){return this.isAttachedObjectSlotUsed(t)?a_(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 Qi(this.id,t)}isWidescreenToggled(){return qi(this.id)}getSpawnInfo(){return Di(this.id)}getSkillLevel(t){return en(this.id,t)}isCheckpointActive(){return po(this.id)}getCheckpoint(){return fo(this.id)}isRaceCheckpointActive(){return go(this.id)}getRaceCheckpoint(){return Po(this.id)}getWorldBounds(){return an(this.id)}isInModShop(){return lo(this.id)}getSirenState(){return oo(this.id)}getLandingGearState(){return co(this.id)}getHydraReactorAngle(){return _o(this.id)}getTrainSpeed(){return ho(this.id)}getZAim(){return nn(this.id)}getSurfingOffsets(){return rn(this.id)}getRotationQuat(){return sn(this.id)}getDialogID(){return ln(this.id)}getSpectateID(){return on(this.id)}getSpectateType(){return dn(this.id)}getRawIp(){return zi(this.id)}setGravity(t){return cn(this.id,t)}getGravity(){return _n(this.id)}setAdmin(t){return ki(this.id,t)}isSpawned(){return hn(this.id)}isControllable(){return un(this.id)}isCameraTargetEnabled(){return mn(this.id)}toggleGhostMode(t){return pn(this.id,t)}getGhostMode(){return fn(this.id)}getBuildingsRemoved(){return gn(this.id)}getAttachedObject(t){return e_(this.id,t)}removeWeapon(t){return Pn(this.id,t)}isUsingOfficialClient(){return yn(this.id)}allowWeapons(t){return An(this.id,t)}areWeaponsAllowed(){return Cn(this.id)}gpci(t=this.charset){return Ki(this.id,t)}isCuffed(){return Ns(this.id)}isInDriveByMode(){return Ts(this.id)}isAndroid(){return this.isConnected()&&this[ae].isAndroid}isPC(){return this.isConnected()&&!this[ae].isAndroid}isUsingOmp(){return Ds(this.id)}simulateCommand(t){return x.simulate(this,t)}static getInstance(t){return U.get(t)}static getInstances(){return[...U.values()]}}const[ia]=h({name:"OnDialogResponseI18n",identifier:"iiiiai",defaultValue:!1,beforeEach(e,t,a,i,n){const r=m.getInstance(e),s=E.decodeFromBuf(n,r.charset);return{player:r,dialogId:t,response:a,listItem:i,buffer:n,inputText:s}}});ia(({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:We.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),Sn(t.id)}static __inject__ShowPlayerDialog=sm}const[na]=h({name:"OnPlayerConnect",beforeEach(e){const t=new m(e);return U.set(e,t),R.close(t),{player:t}}}),[ra]=h({name:"OnPlayerDisconnect",beforeEach(e,t){return{player:U.get(e),reason:t}},afterEach({player:e}){U.delete(e.id)}}),[sa]=h({name:"OnPlayerUpdate",beforeEach(e){return{player:m.getInstance(e)}}}),[xm]=h({name:"OnPlayerTextI18n",identifier:"iai",beforeEach(e,t){const a=m.getInstance(e);return{player:a,text:E.decodeFromBuf(t,a.charset),buffer:t}}}),[km]=h({name:"OnPlayerEnterExitModShop",beforeEach(e,t,a){return{player:m.getInstance(e),enterExit:t,interior:a}}}),[Mm]=h({name:"OnPlayerClickMap",defaultValue:!1,beforeEach(e,t,a,i){return{player:m.getInstance(e),fX:t,fY:a,fZ:i}}}),[Vm]=h({name:"OnPlayerClickPlayer",defaultValue:!1,beforeEach(e,t,a){return{player:m.getInstance(e),clickedPlayer:m.getInstance(t),source:a}}}),[Hm]=h({name:"OnPlayerDeath",beforeEach(e,t,a){return{player:m.getInstance(e),killer:m.getInstance(t)||D.PLAYER_ID,reason:a}}}),[Um]=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}}}),[Wm]=h({name:"OnPlayerKeyStateChange",beforeEach(e,t,a){return{player:m.getInstance(e),newKeys:t,oldKeys:a}}}),[jm]=h({name:"OnPlayerRequestClass",beforeEach(e,t){return{player:m.getInstance(e),classId:t}}}),[Km]=h({name:"OnPlayerRequestSpawn",beforeEach(e){return{player:m.getInstance(e)}}}),[Zm]=h({name:"OnPlayerSpawn",beforeEach(e){return{player:m.getInstance(e)}}}),[Xm]=h({name:"OnPlayerStateChange",beforeEach(e,t,a){return{player:m.getInstance(e),newState:t,oldState:a}}}),[Ym]=h({name:"OnPlayerSteamIn",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[zm]=h({name:"OnPlayerSteamOut",beforeEach(e,t){return{player:m.getInstance(e),forPlayer:m.getInstance(t)}}}),[$m]=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}}}),[Jm]=h({name:"OnPlayerInteriorChange",beforeEach(e,t,a){return{player:m.getInstance(e),newInteriorId:t,oldInteriorId:a}}}),[Qm]=h({name:"OnPlayerRequestDownload",beforeEach(e,t,a){return{player:m.getInstance(e),type:t,crc:a}}}),[qm]=h({name:"OnPlayerFinishedDownloading",beforeEach(e,t){return{player:m.getInstance(e),virtualWorld:t}}}),[ep]=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,ze=new Map;function la(e){if(!e.isConnected()){Y.has(e)&&clearInterval(Y.get(e));return}let t=ze.get(e)||1;if(t>=m.MAX_CHECK_ANDROID_DELAY){clearInterval(Y.get(e)),$e(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)),$e(e,!1))}).catch(()=>{}),t++,ze.set(e,t)}const[tp,ap]=h({name:"OnPlayerPause",isNative:!1,beforeEach(e,t){return{player:e,pausedAt:t}}}),[ip,np]=h({name:"OnPlayerResume",isNative:!1,beforeEach(e,t,a,i){return{player:e,pausedAt:t,now:a,diff:i}}}),[rp,sp]=h({name:"OnPlayerFpsUpdate",isNative:!1,beforeEach(e,t,a){return{player:e,newFps:t,oldFps:a}}}),[lp,$e]=h({name:"OnAndroidCheck",isNative:!1,beforeEach(e,t){return{player:e,result:t}}});na(({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,ap(i,i.lastUpdateTick))})},500)),e.isNpc())return e[ae].isAndroid=!1,t();if(m.SKIP_CHECK_ANDROID)return e[ae].isAndroid=!e.isUsingOfficialClient(),$e(e,e[ae].isAndroid),t();la(e);const a=setInterval(()=>la(e),1e3);return Y.set(e,a),t()}),ra(({player:e,next:t})=>(Re&&m.getInstances().length<=1&&(clearInterval(Re),Re=null),Y.has(e)&&(clearInterval(Y.get(e)),Y.delete(e),ze.delete(e)),t()));function op(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,sp(e,n,i)}}sa(({player:e,next:t})=>{if(!e.isNpc()){const a=Date.now();e.isPaused&&(e.isPaused=!1,np(e,e.lastUpdateTick,a,a-e.lastUpdateTick)),e.lastUpdateTick=a,op(e)}return t()});const Je=Object.freeze({onConnect:na,onDisconnect:ra,onPause:tp,onResume:ip,onUpdate:sa,onText:xm,onEnterExitModShop:km,onClickMap:Mm,onClickPlayer:Vm,onDeath:Hm,onGiveDamage:Um,onKeyStateChange:Wm,onRequestClass:jm,onRequestSpawn:Km,onSpawn:Zm,onStateChange:Xm,onStreamIn:Ym,onStreamOut:zm,onTakeDamage:$m,onInteriorChange:Jm,onRequestDownload:Qm,onFinishedDownloading:qm,onCheckResponse:aa,onCommandReceived:Im,onCommandPerformed:Cm,onCommandError:Tm,onCommandText:x.on,offCommandText:x.off,onDialogResponse:ia,onLocaleChange:Om,onCharsetChange:Fm,onFpsUpdate:rp,onWeaponShot:ep,onAndroidCheck:lp,onCommandTextRaw:wm}),dp=[8,9,10,25,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,96,97,98],cp=[[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],[],[],[],[],[],[],[],[]],_p=(e,t)=>{if(!Qe(e))return!1;const a=cp[e-400];if(a===null)return!1;const i=t-1e3;return dp.includes(i)||a.includes(i)},Qe=e=>e>=400&&e<=611,hp=(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},[oa]=h({name:"OnGameModeInit"}),[da]=h({name:"OnGameModeExit"}),[up]=h({name:"OnIncomingConnection",defaultValue:!1,beforeEach(e,t,a){return{playerId:e,ipAddress:t,port:a}}}),[mp]=h({name:"OnRconCommandI18n",identifier:"ai",defaultValue:!1,beforeEach(e){return{buffer:e,cmd:E.decodeFromBuf(e)}}}),[pp]=h({name:"OnRconLoginAttemptI18n",identifier:"aiaii",beforeEach(e,t,a){return{ip:E.decodeFromBuf(e),password:E.decodeFromBuf(t),success:!!a,ipBuffer:e,passwordBuffer:t}}}),oe=[],pe=[],qe=new Map,et=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}`)}},tt=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}`)}},fp=async e=>{await tt(e),await et(e)};oa(async({next:e})=>{const t=oe.map(a=>a.name);for(const a of t)await et(a);return e()}),da(async({next:e})=>{const t=pe.map(a=>a.name);for(const a of t)await tt(a);return e()});const gp=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=oa;static onExit=da;static onIncomingConnection=up;static onRconCommand=mp;static onRconLoginAttempt=pp;static use(t,...a){return gp(t,...a),this}static loadUseScript=et;static reloadUseScript=fp;static unloadUseScript=tt;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 ei(t)}static setWorldTime(t){if(t<0||t>23)throw new Error("[GameMode]: The valid hour value is only 0 to 23");return Ja(t)}static getWorldTime=Qa;static setTeamCount=Ii;static sendRconCommand=cm;static addPlayerClass=Ai;static addPlayerClassEx=Ci;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 ii(t,a,i,n,r)}static manualVehicleEngineAndLights=Il;static blockIpAddress=Wi;static unBlockIpAddress=ji;static getServerTickRate=hi;static addSimpleModel(t,a,i,n,r){return this.checkSimpleModel(t,a,i,n,r)?zc(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)?$c(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=dt;static getCustomModePath=n_;static getConsoleVarAsString(t,a="utf8"){const{consoleVarBuf:i,ret:n}=Ba(t);return{consoleVar:E.decodeFromBuf(E.getValidStr(i),a),ret:n}}static getRestartTime=Wa;static setRestartTime=Ua;static allowAdminTeleport=Ra;static isAdminTeleportAllowed=La;static allowInteriorWeapons=ba;static areInteriorWeaponsAllowed=Oa;static areAllAnimationsEnabled=Ga;static enableAllAnimations=Fa;static enableStuntBonusForAll=mi;static enableVehicleFriendlyFire=qa;static enableZoneNames=ni;static disableInteriorEnterExits=si;static setGameModeText=Ya;static getGravity=ti;static setGravity=ai;static showNameTags=za;static disableNameTagLOS=oi;static usePlayerPedAnims=ri;static showPlayerMarkers=$a;static limitPlayerMarkerRadius=ci;static limitGlobalChatRadius=di;static setNameTagDrawDistance=li;static findModelFileNameFromCRC=Qc;static findTextureFileNameFromCRC=qc;static getWeaponName=Pi;static setObjectsDefaultCameraCollision=Yc;static vectorSize=Ue;static clearBanList=Xi;static isBanned=Yi;static isValidNickName=Aa;static allowNickNameCharacter=Ca;static isNickNameCharacterAllowed=Na;static addServerRule=Ta;static setServerRule=Da;static isValidServerRule=va;static removeServerRule=wa;static getWeaponSlot=gi;static getAvailableClasses=Si;static getPlayerClass=yi;static editPlayerClass=Ei;static toggleChatTextReplacement=pi;static chatTextReplacementToggled=fi;static getConsoleVarAsInt=xa;static getConsoleVarAsBool=ka;static getWeather=Ma;static getServerRuleFlag=Va;static setServerRuleFlags=Ha}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&&!Qe(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(!_p(this.getModel(),t))throw new Error(`[Vehicle]: Invalid component id ${t} attempted to attach to the vehicle ${this}`);return bl(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 Ol(this.id,t)}getComponentInSlot(t){return jl(this.id,t)}linkToInterior(t){return this.id===-1?0:Ll(this.id,t)}setVirtualWorld(t){return this.id===-1?0:ql(this.id,t)}getVirtualWorld(){return this.id===-1?0:eo(this.id)}repair(){return this.id===-1?0:Zl(this.id)}setPos(t,a,i){return this.id===-1?!1:fl(this.id,t,a,i)}getPos(){return pl(this.id)}getHealth(){return xl(this.id)}setHealth(t){return this.id===-1?0:Bl(this.id,t)}isPlayerIn(t){return this.id===-1?!1:rs(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 Br(t.id,this.id,a)}getZAngle(){return gl(this.id)}setZAngle(t){return this.id===-1?0:yl(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 Ul(this.id,t)}changeColors(t,a){return this.id===-1?0:Gl(this.id,t,a)}setVelocity(t,a,i){return this.id===-1?!1:Yl(this.id,t,a,i)}getVelocity(){return Xl(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:a,y:i,z:n}=this.getVelocity();return Ue(a,i,n)*t}setAngularVelocity(t,a,i){return this.id===-1?!1:zl(this.id,t,a,i)}getDamageStatus(){return $l(this.id)}updateDamageStatus(t,a,i,n){return Jl(this.id,t,a,i,n)}getDistanceFromPoint(t,a,i){return Sl(this.id,t,a,i)}getModel(){return Wl(this.id)}static getModelInfo(t,a){return Ql(t,a)}getModelInfo(t){return C.getModelInfo(this.getModel(),t)}getRotationQuat(){return Pl(this.id)}setRespawn(){return this.id===-1?0:Rl(this.id)}isStreamedIn(t){return this.id===-1?!1:ml(this.id,t.id)}setParamsCarDoors(t,a,i,n){return this.id===-1?0:Tl(this.id,t,a,i,n)}setParamsCarWindows(t,a,i,n){return this.id===-1?0:vl(this.id,t,a,i,n)}getParamsCarDoors(){return Dl(this.id)}getParamsCarWindows(){return wl(this.id)}setParamsEx(t,a,i,n,r,s,l){return this.id===-1?0:Al(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]=Cl(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:Nl(this.id)}setParamsForPlayer(t,a,i){return this.id===-1?0:El(this.id,t.id,a,i)}isTrailerAttached(){return this.id===-1?!1:Vl(this.id)}changePaintjob(t){return this.id===-1||!hp(this.getModel(),t)?0:(this.changeColors("#fff","#fff"),Fl(this.id,t),1)}attachTrailer(t){return this.id===-1?0:kl(t.id,this.id)}detachTrailer(){this.isTrailerAttached()&&Ml(this.id)}getTrailer(){return C.getInstance(Hl(this.id))}isValid(){return A.skip&&this.id!==-1?!0:C.isValid(this.id)}getMatrix(){return cl(this.id)}getTrainSpeed(){return this.id===-1?0:dl(this.id)}getHydraReactorAngle(){return this.id===-1?0:ol(this.id)}getLandingGearState(){return this.id===-1?0:ll(this.id)}getSirenState(){return this.id===-1?0:sl(this.id)}getDriver(){return U.get(nl(this.id))}getLastDriver(){return U.get(il(this.id))}isSirenEnabled(){return tl(this.id)}toggleSirenEnabled(t){return this.id===-1?0:qs(this.id,t)}setParamsSirenState(t){return this.id===-1?0:el(this.id,t)}isDead(){return this.id===-1?!0:$s(this.id)}setDead(t){return this.id===-1?!1:Js(this.id,t)}setBeenOccupied(t){return this.id===-1?!1:Qs(this.id,t)}getRespawnTick(){return this.id===-1?0:Ys(this.id)}setRespawnTick(t){return this.id===-1?!1:zs(this.id,t)}isOccupied(){return this.id===-1?!1:Xs(this.id)}hasBeenOccupied(){return this.id===-1?!1:Zs(this.id)}getOccupiedTick(){return this.id===-1?0:js(this.id)}setOccupiedTick(t){return this.id===-1?0:Ks(this.id,t)}getCab(){return this.id===-1?0:Ws(this.id)}getRespawnDelay(){return this.id===-1?0:Us(this.id)}setRespawnDelay(t){return this.id===-1?0:Hs(this.id,t)}getNumberPlate(){return Vs(this.id)}getInterior(){return this.id===-1?0:Ms(this.id)}getPaintjob(){return this.id===-1?-1:ks(this.id)}getColors(){return xs(this.id)}setSpawnInfo(t,a,i,n,r,s,l,o=-2,d=-2,c=!1){return this.id===-1||!c&&!Qe(t)?0:Bs(this.id,t,a,i,n,r,I(s),I(l),o,d)}getSpawnInfo(){return Fs(this.id)}getRandomColorPair(){return lt(this.getModel())}show(){return this.id===-1?!1:no(this.id)}hide(){return this.id===-1?!1:ro(this.id)}isHidden(){return this.id===-1?!1:so(this.id)}getVehicleOccupant(t){return uo(this.id,t)}getVehicleMaxPassengers(){return ot(this.getModel())}countVehicleOccupants(){return mo(this.getModel())}static getVehicleMaxPassengers=ot;static getRandomColorPair=lt;static getComponentType=Kl;static colorIndexToColor=_l;static isValid=to;static getModelsUsed=rl;static getModelCount=al;static getInstance(t){return K.get(t)}static getInstances(){return[...K.values()]}static __inject_AddStaticVehicle=ao;static __inject_AddStaticVehicleEx=io;static __inject_CreateVehicle=hl;static __inject_DestroyVehicle=ul}L.onExit(({next:e})=>(C.getInstances().forEach(t=>t.destroy()),K.clear(),e()));const[Pp]=h({name:"OnVehicleDamageStatusUpdate",defaultValue:!1,beforeEach(e,t){return{vehicle:C.getInstance(e),player:m.getInstance(t)}}}),[Sp]=h({name:"OnVehicleDeath",beforeEach(e,t){return{vehicle:C.getInstance(e),killer:m.getInstance(t)}}}),[yp]=h({name:"OnVehicleMod",beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),componentId:a}}}),[Ep]=h({name:"OnVehiclePaintjob",beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),paintjobId:a}}}),[Ip]=h({name:"OnVehicleRespray",beforeEach(e,t,a,i){return{player:m.getInstance(e),vehicle:C.getInstance(t),color:[a,i]}}}),[Ap]=h({name:"OnVehicleSirenStateChange",defaultValue:!1,beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),state:!!a}}}),[Cp]=h({name:"OnVehicleSpawn",beforeEach(e){return{vehicle:C.getInstance(e)}}}),[Np]=h({name:"OnVehicleStreamIn",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[Tp]=h({name:"OnVehicleStreamOut",beforeEach(e,t){return{vehicle:C.getInstance(e),forPlayer:m.getInstance(t)}}}),[Dp]=h({name:"OnPlayerEnterVehicle",beforeEach(e,t,a){return{player:m.getInstance(e),vehicle:C.getInstance(t),isPassenger:!!a}}}),[vp]=h({name:"OnPlayerExitVehicle",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[wp]=h({name:"OnNpcEnterVehicle",beforeEach(e,t){return{vehicle:C.getInstance(e),seatId:t}}}),[Rp]=h({name:"OnNpcExitVehicle"}),[Lp]=h({name:"OnTrailerUpdate",beforeEach(e,t){return{player:m.getInstance(e),vehicle:C.getInstance(t)}}}),[bp]=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}}}),Op=Object.freeze({onDamageStatusUpdate:Pp,onDeath:Sp,onMod:yp,onPaintjob:Ep,onRespray:Ip,onSirenStateChange:Ap,onSpawn:Cp,onStreamIn:Np,onStreamOut:Tp,onPlayerEnter:Dp,onPlayerExit:vp,onNpcEnter:wp,onNpcExit:Rp,onTrailerUpdate:Lp,onUnoccupiedUpdate:bp}),[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)}}}),[Gp]=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=Iu;static setTickRate=Au;static getPlayerTickRate(t){return Cu(t.id)}static setPlayerTickRate(t,a=50){return Nu(t.id,a)}static toggleChunkStream=Tu;static isToggleChunkStream=Du;static getChunkTickRate(t,a=-1){return a instanceof m?Kt(t,a.id):Kt(t,a)}static setChunkTickRate(t,a,i=-1){return i instanceof m?Zt(t,a,i.id):Zt(t,a,i)}static getChunkSize=vu;static setChunkSize=wu;static getMaxItems=Ru;static setMaxItems=Lu;static getVisibleItems(t,a=-1){return a instanceof m?Xt(t,a.id):Xt(t,a)}static setVisibleItems(t,a,i=-1){return i instanceof m?Yt(t,a,i.id):Yt(t,a,i)}static getRadiusMultiplier(t,a=-1){return a instanceof m?zt(t,a.id):zt(t,a)}static setRadiusMultiplier(t,a,i=-1){return i instanceof m?$t(t,i.id):$t(t,a,i)}static getTypePriority=bu;static setTypePriority=Ou;static getCellDistance=Gu;static setCellDistance=Fu;static getCellSize=Bu;static setCellSize=xu;static toggleItemStatic=ku;static isToggleItemStatic=Mu;static toggleItemInvAreas=Vu;static isToggleItemInvAreas=Hu;static toggleItemCallbacks=Uu;static isToggleItemCallbacks=Wu;static toggleErrorCallback=ju;static isToggleErrorCallback=Ku;static amxUnloadDestroyItems=Zu;static processActiveItems=Xu;static toggleIdleUpdate(t,a){return Yu(t.id,a)}static isToggleIdleUpdate(t){return zu(t.id)}static toggleCameraUpdate(t,a){return $u(t.id,a)}static isToggleCameraUpdate(t){return Ju(t.id)}static toggleItemUpdate(t,a,i){return Qu(t.id,a,i)}static isToggleItemUpdate(t,a){return qu(t.id,a)}static getLastUpdateTime(){return em()}static update(t,a=-1){return tm(t.id,a)}static updateEx(t,a,i,n,r,s,l,o,d){return am(t.id,a,i,n,r,s,l,o,d)}static getDistanceToItem=vh;static toggleItem(t,a,i,n){return wh(t.id,a,i,n)}static isToggleItem(t,a,i){return Rh(t.id,a,i)}static toggleAllItems(t,a,i,n=[-1]){return Lh(t.id,a,i,n)}static getItemInternalID(t,a,i){return bh(t.id,a,i)}static getItemStreamerID(t,a,i){return Oh(t.id,a,i)}static isItemVisible(t,a,i){return Gh(t.id,a,i)}static destroyAllVisibleItems(t,a,i=1){return Fh(t.id,a,i)}static countVisibleItems(t,a,i=1){return Bh(t.id,a,i)}static destroyAllItems=xh;static countItems=kh;static getNearbyItems=Mh;static getAllVisibleItems(t,a,i){return Vh(t.id,a,i)}static getItemPos=Hh;static setItemPos=Uh;static getItemOffset=Wh;static setItemOffset=jh;static getFloatData=ih;static setFloatData=nh;static getIntData=rh;static setIntData=sh;static getArrayData=lh;static setArrayData=oh;static isInArrayData=dh;static appendArrayData=ch;static removeArrayData=_h;static getArrayDataLength=jt;static getUpperBound=hh;static onPluginError=Gp}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=fh(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=Kh(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||Zh(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 Yh(this.id)}setPos(t,a,i){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set position before create");return zh(this.id,t,a,i)}getRot(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot get rotation before create");return $h(this.id)}setRot(t,a,i){if(this.id===-1)throw new Error("[StreamerObject]: Cannot set rotation before create");return Jh(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(),Qh(this.id,t,a,i,n,r,s,l)}stop(){if(this.id===-1)throw new Error("[StreamerObject]: Cannot stop moving before create");return qh(this.id)}isMoving(){return this.id===-1?!1:eu(this.id)}attachCamera(t){if(this.id===-1||t.id===-1)throw new Error("[StreamerObject]: Cannot attachCamera before both are created");return tu(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 au(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 iu(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 nu(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(),ru(t.id,this.id)}isMaterialUsed(t){return this.id===-1?!1:su(this.id,t)}removeMaterial(t){return this.id===-1||!this.isMaterialUsed(t)?0:lu(this.id,t)}getMaterial(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to get material before create");return fm(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 ou(this.id,t,a,i,n,I(r))}isMaterialTextUsed(t){return this.id===-1?!1:du(this.id,t)}removeMaterialText(t){return this.isMaterialTextUsed(t)?cu(this.id,t):0}getMaterialText(t){if(this.id===-1)throw new Error("[StreamerObject]: Unable to get material text before create");return gm(this.id,t,this.sourceInfo?.charset||"utf8")}setMaterialText(t=this.sourceInfo?.charset,a,i,n=Ze.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),pm(t||"utf8",this.id,a,i,n,r,s,l,I(o),I(d),c)}getPlayerCameraTarget(t){const a=_u(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 hu(this.id)}getNoCameraCollision(){return uu(this.id)}static isValid=Xh;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[Fp,Bp]=h({name:"OnDynamicObjectStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[xp,kp]=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?Bp(a,B.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.OBJECT?kp(a,B.getInstance(t)):i());const[Mp]=h({name:"OnDynamicObjectMoved",identifier:"i",beforeEach(e){return{object:B.getInstance(e)}}}),[Vp]=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}}}),[Hp]=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}}}),[Up]=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}}}),[Wp]=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}}}),jp=Object.freeze({onMoved:Mp,onPlayerEdit:Vp,onPlayerSelect:Hp,onPlayerShoot:Up,onPlayerEditAttached:Wp,onStreamIn:Fp,onStreamOut:xp});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=yh(o,d,c,u,I(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=uh(o,d,c,u,I(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||mh(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=ph;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[Kp,Zp]=h({name:"OnDynamicMapIconStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Xp,Yp]=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?Zp(a,_e.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.MAP_ICON?Yp(a,_e.getInstance(t)):i());const zp=Object.freeze({onStreamIn:Kp,onStreamOut:Xp});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=fu;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=mu;static __inject_CreateDynamicPickupEx=gh;static __inject_DestroyDynamicPickup=pu}L.onExit(({next:e})=>(k.getInstances().forEach(t=>t.destroy()),me.clear(),e()));const[$p,Jp]=h({name:"OnDynamicPickupStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Qp,qp]=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?Jp(a,k.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.PICKUP?qp(a,k.getInstance(t)):i());const[ef]=h({name:"OnPlayerPickUpDynamicPickup",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),pickup:k.getInstance(t)}}}),tf=Object.freeze({onPlayerPickUp:ef,onStreamIn:$p,onStreamOut:Qp});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=Ph(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=Q_(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||Ut(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 q_(t.id,this.id,a),this}isPlayerIn(t){return this.id===-1?!1:th(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=Wt;static togglePlayerAll(t,a){return eh(t.id,a)}static getPlayerVisible(t){return ie.get(ah(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[af,nf]=h({name:"OnDynamicCheckPointStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[rf,sf]=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?nf(a,z.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.CP?sf(a,z.getInstance(t)):i());const[lf]=h({name:"OnPlayerEnterDynamicCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),cp:z.getInstance(t)}}}),[of]=h({name:"OnPlayerLeaveDynamicCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),cp:z.getInstance(t)}}}),df=Object.freeze({onPlayerEnter:lf,onPlayerLeave:of,onStreamIn:af,onStreamOut:rf});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=Sh(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=gu(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||Ut(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 Pu(t.id,this.id,a),this}static togglePlayerAll(t,a){return Su(t.id,a)}isPlayerIn(t){return this.id===-1?!1:yu(t.id,this.id)}static getPlayerVisible(t){return re.get(Eu(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=Wt;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[cf,_f]=h({name:"OnDynamicRaceCPStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[hf,uf]=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?_f(a,$.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.RACE_CP?uf(a,$.getInstance(t)):i());const[mf]=h({name:"OnPlayerEnterDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCP:$.getInstance(t)}}}),[pf]=h({name:"OnPlayerLeaveDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),raceCp:$.getInstance(t)}}}),ff=Object.freeze({onPlayerEnter:mf,onPlayerLeave:pf,onStreamIn:cf,onStreamOut:hf});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=Dh(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=l_(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||o_(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:c_(this.id,t.id)}getVirtualWorld(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get virtual world before create");return __(this.id)}setVirtualWorld(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set virtual world before create");return h_(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(!Ye(t,a))throw new Error(`[StreamerActor]: Invalid anim library or name ${t} ${a}`);return u_(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 m_(this.id)}getFacingAngle(){return p_(this.id)}setFacingAngle(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set facing angle before create");return f_(this.id,t)}getPos(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get pos before create");return g_(this.id)}setPos(t,a,i){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set pos before create");return P_(this.id,t,a,i)}getHealth(){return S_(this.id)}setHealth(t){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set health before create");return y_(this.id,t)}isInvulnerable(){return this.id===-1?!1:I_(this.id)}setInvulnerable(t=!0){if(this.id===-1)throw new Error("[StreamerActor]: Unable to set invulnerable before create");return E_(this.id,t)}getPlayerTarget(t){const a=A_(t.id);return Q.get(a)}getPlayerCameraTarget(t){const a=C_(t.id);return Q.get(a)}getSkin(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get skin before create");return bs(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:Os(this.id,t)}getSpawnInfo(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get spawn info before create");return Gs(this.id)}getAnimation(){if(this.id===-1)throw new Error("[StreamerActor]: Unable to get animation before create");return N_(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=d_;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[gf]=h({name:"OnDynamicActorStreamIn",identifier:"ii",beforeEach(e,t){return{actor:ee.getInstance(e),forPlayer:m.getInstance(t)}}}),[Pf]=h({name:"OnDynamicActorStreamOut",identifier:"ii",beforeEach(e,t){return{actor:ee.getInstance(e),forPlayer:m.getInstance(t)}}}),[Sf]=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}}}),yf=Object.freeze({onStreamIn:gf,onStreamOut:Pf,onPlayerGiveDamage:Sf});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=hm(u,I(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=_m(c||"utf8",u,I(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||r_(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 mm(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),um(this.id,I(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=s_;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[Ef,If]=h({name:"OnDynamic3dTextStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Af,Cf]=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?If(a,he.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.TEXT_3D_LABEL?Cf(a,he.getInstance(t)):i());const Nf=Object.freeze({onStreamIn:Ef,onStreamOut:Af});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=Eh(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=Nh(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=Ih(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=Th(s,l,o,t,a,i)}else if(n==="rectangle"){const{minX:s,minY:l,maxX:o,maxY:d}=this.sourceInfo;this._id=Ch(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=Ah(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=T_(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=R_(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=D_(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=L_(s,l,o,t,a,i)}else if(n==="rectangle"){const{minX:s,minY:l,maxX:o,maxY:d}=this.sourceInfo;this._id=w_(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=v_(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||b_(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 G_(this.id)}getPolygonPoints(){return F_(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 kt(this.id)}isPlayerIn(t,a=!1){return this.id===-1?!1:B_(t.id,this.id,a)}static isPlayerInAny(t,a=!1){return x_(t.id,a)}isAnyPlayerIn(t=!1){return this.id===-1?!1:k_(this.id,t)}static isAnyPlayerInAny(t=!1){return M_(t)}static getPlayerAreas(t){return G.getPlayerAreasNumber(t)?V_(t.id).areas.map(a=>q.get(a)):[]}static getPlayerAreasNumber(t){return Mt(t.id)}isPointIn(t,a,i){return this.id===-1?!1:H_(this.id,t,a,i)}static isPointInAny(t,a,i){return U_(t,a,i)}isLineIn(t,a,i,n,r,s){return this.id===-1?!1:W_(this.id,t,a,i,n,r,s)}static isLineInAny(t,a,i,n,r,s){return j_(t,a,i,n,r,s)}static getForPoint(t,a,i){return G.getNumberForPoint(t,a,i)?K_(t,a,i).areas.map(n=>G.getInstance(n)):[]}static getNumberForPoint(t,a,i){return Vt(t,a,i)}static getForLine(t,a,i,n,r,s){return G.getNumberForLine(t,a,i,n,r,s)?Z_(t,a,i,n,r,s).areas.map(l=>q.get(l)):[]}static getNumberForLine(t,a,i,n,r,s){return Ht(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 X_(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 Y_(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 z_(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 $_(this.id,t)}isToggleSpectateMode(){return this.id===-1?!1:J_(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=O_;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[Tf,Df]=h({name:"OnDynamicAreaStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[vf,wf]=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?Df(a,G.getInstance(t)):i()),ce(({type:e,id:t,forPlayer:a,next:i})=>e===S.AREA?wf(a,G.getInstance(t)):i());const[Rf]=h({name:"OnPlayerEnterDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:G.getInstance(t)}}}),[Lf]=h({name:"OnPlayerLeaveDynamicArea",identifier:"ii",beforeEach(e,t){return{player:m.getInstance(e),area:G.getInstance(t)}}}),bf=Object.freeze({onStreamIn:Tf,onStreamOut:vf,onPlayerEnter:Rf,onPlayerLeave:Lf});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=_i;static startRecordingPlayerData(t,a,i){if(t.isRecording)throw new Error("[NpcFunc]: It should be stopped before recording");qr(t.id,a,i),t.isRecording=!0}static stopRecordingPlayerData(t){if(!t.isRecording)throw new Error("[NpcFunc]: It should be started before stop");es(t.id),t.isRecording=!1}static startRecordingPlayback(t,a){if(N.recordStatus>=H.START)throw new Error("[NpcFunc]: The current status cannot be replayed");vs(t,a),N.recordStatus=H.START}static stopRecordingPlayback(){if(N.recordStatus<H.START)throw new Error("[NpcFunc]: The current status cannot be stopped");ws(),N.recordStatus=H.NONE}static pauseRecordingPlayback(){if(N.recordStatus!==H.START)throw new Error("[NpcFunc]: The current status cannot be paused");Rs(),N.recordStatus=H.PAUSE}static resumeRecordingPlayback(){if(N.recordStatus!==H.PAUSE)throw new Error("[NpcFunc]: The current status cannot be paused");Ls(),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[Of]=h({name:"OnNpcConnect",beforeEach(e){return{myPlayerId:e}}}),[Gf]=h({name:"OnNpcDisconnect",beforeEach(e){return{reason:e}}}),[Ff]=h({name:"OnNpcModeInit"}),[Bf]=h({name:"OnNpcModeExit"}),[xf]=h({name:"OnClientMessageI18n",identifier:"iai",beforeEach(e,t){return{color:e,buffer:t,string:E.decodeFromBuf(t)}}}),[kf]=h({name:"OnNPCFinishMove",beforeEach(e){return{npc:N.getInstance(e)}}}),[Mf]=h({name:"OnNPCCreate",beforeEach(e){return{npc:N.getInstance(e)}}}),[Vf]=h({name:"OnNPCDestroy",beforeEach(e){return{npc:N.getInstance(e)}},afterEach({npc:e}){Ne.delete(e.id)}}),[Hf]=h({name:"OnNPCWeaponStateChange",beforeEach(e,t,a){return{npc:N.getInstance(e),newState:t,oldState:a}}}),[Uf]=h({name:"OnNPCTakeDamage",beforeEach(e,t,a,i,n){return{npc:N.getInstance(e),damager:m.getInstance(t),damage:a,weapon:i,bodyPart:n}}}),[Wf]=h({name:"OnNPCGiveDamage",beforeEach(e,t,a,i,n){return{npc:N.getInstance(e),damager:m.getInstance(t),damage:a,weapon:i,bodyPart:n}}}),[jf]=h({name:"OnNPCDeath",beforeEach(e,t,a){return{npc:N.getInstance(e),killer:t,reason:a}}}),[Kf]=h({name:"OnNpcSpawn",beforeEach(e){return{npc:N.getInstance(e)}}}),[Zf]=h({name:"OnNpcRespawn",beforeEach(e){return{npc:N.getInstance(e)}}}),[Xf]=h({name:"OnNPCPlaybackStart",beforeEach(e,t){return{npc:N.getInstance(e),recordId:t}}}),[Yf]=h({name:"OnNPCPlaybackEnd",beforeEach(e,t){return{npc:N.getInstance(e),recordId:t}}}),[zf]=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}}}),[$f]=h({name:"OnNPCFinishNodePoint",beforeEach(e,t,a){return{npc:N.getInstance(e),nodeId:t,pointId:a}}}),[Jf]=h({name:"OnNPCFinishNode",beforeEach(e,t){return{npc:N.getInstance(e),nodeId:t}}}),[Qf]=h({name:"OnNPCChangeNode",beforeEach(e,t,a){return{npc:N.getInstance(e),newNodeId:t,oldNodeId:a}}}),[qf]=h({name:"OnNPCFinishMovePath",beforeEach(e,t){return{npc:N.getInstance(e),pathId:t}}}),[eg]=h({name:"OnNPCFinishMovePathPoint",beforeEach(e,t,a){return{npc:N.getInstance(e),pathId:t,pointIndex:a}}}),tg=Object.freeze({onConnect:Of,onDisconnect:Gf,onModeInit:Ff,onModeExit:Bf,onClientMessage:xf,onFinishMove:kf,onCreate:Mf,onDestroy:Vf,onSpawn:Kf,onRespawn:Zf,onWeaponStateChange:Hf,onTakeDamage:Uf,onGiveDamage:Wf,onDeath:jf,onPlaybackStart:Xf,onPlaybackEnd:Yf,onWeaponShot:zf,onFinishNodePoint:$f,onFinishNode:Jf,onChangeNode:Qf,onFinishMovePath:qf,onFinishMovePathPoint:eg});class ag{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getNetworkStats(){return Ui()}static getPlayerNetworkStats(t){return Hi(t.id)}static getBytesReceived(t){return Ri(t.id)}static getBytesSent(t){return bi(t.id)}static getConnectionStatus(t){return Fi(t.id)}static getConnectedTime(t){return vi(t.id)}static getIpPort(t){return Bi(t.id)}static getMessagesReceived(t){return wi(t.id)}static getMessagesRecvPerSecond(t){return Oi(t.id)}static getMessagesSent(t){return Li(t.id)}static getPacketLossPercent(t){return Gi(t.id)}}class ig{_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){Ka(t)}static has(t,a){return Tn(t.id,a)}forAll(t="win1252"){ja(E.encodeToBuf(E.convertSpecialChar(this.text),t),this.time,this.style)}forPlayer(t,a="win1252"){Nn(t.id,E.encodeToBuf(E.convertSpecialChar(this.text),a),this.time,this.style)}hideForPlayer(t){return vn(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=To(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||Do(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 vo(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 wo(this.id,t,a),this}disable(){if(this._id===-1)throw new Error("[Menu]: Cannot disable menu before create");return Oo(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");Go(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 Ro(this.id,t.id)}hideForPlayer(t){if(this._id===-1)throw new Error("[Menu]: Cannot hide menu before create");return Lo(this.id,t.id)}isDisabled(){return this._id===-1?!1:So(this.id)}isRowDisabled(t){return this._id===-1||t<0||t>this._itemCount?!1:yo(this.id,t)}getItems(t){return this._id===-1?0:Eo(this.id,t)}getPos(){return this._id===-1?{fX:this.x,fY:this.y}:Io(this.id)}getColumnWidth(){return this.id===-1?{fColumn1:this.col1width,fColumn2:this.col2width}:Ao(this.id)}getColumnHeader(t){if(this._id===-1)throw new Error("[Menu]: Cannot get column header before create");return Co(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 No(this.id,t,a)}static isValid=bo;static getInstance(t){return Ce.get(t)}static getInstances(){return[...Ce.values()]}static getInstanceByPlayer(t){return this.getInstances().find(a=>a.id===Fo(t.id))}}L.onExit(({next:e})=>(fe.getInstances().forEach(t=>t.destroy()),Ce.clear(),e()));const[ng]=h({name:"OnPlayerExitedMenu",beforeEach(e){return{player:m.getInstance(e)}}}),[rg]=h({name:"OnPlayerSelectedMenuRow",beforeEach(e,t){const a=m.getInstance(e),i=fe.getInstanceByPlayer(a);return{player:a,menu:i,row:t}}}),sg=Object.freeze({onPlayerExited:ng,onPlayerSelectedRow:rg});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=ed(t.id,a,i,n,r);const s=Je.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=jo(a,i,n,r),Ie.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||td(t.id,this.id),Ae.delete(this.id)):(A.skip||Ko(this.id),Ie.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 Xo(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)ad(i.id,this.id,I(t));else if(a)Zo(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 zo(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)id(a.id,this.id);else if(t)Yo(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 Jo(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)nd(i.id,this.id,I(a));else if(t)$o(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 qo(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)rd(a.id,this.id);else if(t)Qo(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?ld(a.id,this.id):xo(t.id,this.id)}isVisibleForPlayer(t){if(this.id===-1)return!1;const a=this.sourceInfo.player;return a?od(a.id,this.id):ko(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?dd(a.id,this.id):Mo(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?cd(a.id,this.id):Vo(t.id,this.id)}isFlashingForPlayer(t){if(this.id===-1)return!1;const a=this.sourceInfo.player;return a?_d(a.id,this.id):Ho(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?hd(t.id,this.id):Uo(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?ud(a.id,this.id,t):Wo(this.id,t),this}static isValidPlayer=sd;static isValidGlobal=Bo;static getInstance(t,a){return a?Ie.get(t):Ae.get(t)}static getInstances(t){return t?[...Ie.values()]:[...Ae.values()]}}L.onExit(({next:e})=>(b.getInstances(!0).forEach(t=>t.destroy()),b.getInstances(!1).forEach(t=>t.destroy()),Ie.clear(),Ae.clear(),e()));const[lg]=h({name:"OnPlayerEnterGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[og]=h({name:"OnPlayerLeaveGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[dg]=h({name:"OnPlayerEnterPlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[cg]=h({name:"OnPlayerLeavePlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),[_g]=h({name:"OnPlayerClickGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!0)}}}),[hg]=h({name:"OnPlayerClickPlayerGangZone",beforeEach(e,t){return{player:m.getInstance(e),gangZone:b.getInstance(t,!1)}}}),ug=Object.freeze({onPlayerEnterGlobal:lg,onPlayerLeaveGlobal:og,onPlayerEnterPlayer:dg,onPlayerLeavePlayer:cg,onPlayerClickGlobal:_g,onPlayerClickPlayer:hg});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=E.encodeToBuf(E.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=Je.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(Ee.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(Ee.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(Ee.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=E.encodeToBuf(E.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=Fd;static __inject__CreatePlayerTextDraw=Nc;static __inject__TextDrawDestroy=Bd;static __inject__PlayerTextDrawDestroy=Tc;static __inject__TextDrawFont=Zd;static __inject__PlayerTextDrawFont=Bc;static __inject__TextDrawColor=Vd;static __inject__PlayerTextDrawColor=Rc;static __inject__TextDrawBoxColor=Ud;static __inject__PlayerTextDrawBoxColor=bc;static __inject__TextDrawBackgroundColor=Kd;static __inject__PlayerTextDrawBackgroundColor=Fc;static __inject__TextDrawAlignment=Md;static __inject__PlayerTextDrawAlignment=wc;static __inject__TextDrawLetterSize=xd;static __inject__PlayerTextDrawLetterSize=Dc;static __inject__TextDrawSetOutline=jd;static __inject__PlayerTextDrawSetOutline=Gc;static __inject__TextDrawSetPreviewModel=ec;static __inject__PlayerTextDrawSetPreviewModel=Uc;static __inject__TextDrawSetPreviewRot=tc;static __inject__PlayerTextDrawSetPreviewRot=Wc;static __inject__TextDrawSetPreviewVehicleColors=ac;static __inject__PlayerTextDrawSetPreviewVehicleColors=jc;static __inject__TextDrawSetProportional=Xd;static __inject__PlayerTextDrawSetProportional=xc;static __inject__TextDrawSetSelectable=Yd;static __inject__PlayerTextDrawSetSelectable=kc;static __inject__TextDrawSetShadow=Wd;static __inject__PlayerTextDrawSetShadow=Oc;static __inject__PlayerTextDrawSetString=Hc;static __inject__TextDrawSetStringForPlayer=Gd;static __inject__TextDrawSetString=qd;static __inject__TextDrawTextSize=kd;static __inject__PlayerTextDrawTextSize=vc;static __inject__PlayerTextDrawUseBox=Lc;static __inject__TextDrawUseBox=Hd;static __inject__PlayerTextDrawShow=Mc;static __inject__TextDrawShowForPlayer=zd;static __inject__PlayerTextDrawHide=Vc;static __inject__TextDrawHideForPlayer=$d;static __inject__TextDrawShowForAll=Jd;static __inject__TextDrawHideForAll=Qd;static __inject__IsValidPlayerTextDraw=rc;static __inject__IsValidTextDraw=md;static __inject__IsPlayerTextDrawVisible=sc;static __inject__IsTextDrawVisibleForPlayer=pd;static __inject__PlayerTextDrawGetString=lc;static __inject__TextDrawGetString=fd;static __inject__PlayerTextDrawSetPos=oc;static __inject__TextDrawSetPos=gd;static __inject__PlayerTextDrawGetLetterSize=dc;static __inject__TextDrawGetLetterSize=Pd;static __inject__PlayerTextDrawGetTextSize=cc;static __inject__TextDrawGetTextSize=Sd;static __inject__PlayerTextDrawGetPos=_c;static __inject__TextDrawGetPos=yd;static __inject__PlayerTextDrawGetColor=hc;static __inject__TextDrawGetColor=Ed;static __inject__PlayerTextDrawGetBoxColor=uc;static __inject__TextDrawGetBoxColor=Id;static __inject__PlayerTextDrawGetBackgroundColor=mc;static __inject__TextDrawGetBackgroundColor=Ad;static __inject__PlayerTextDrawGetShadow=pc;static __inject__TextDrawGetShadow=Cd;static __inject__PlayerTextDrawGetOutline=fc;static __inject__TextDrawGetOutline=Nd;static __inject__PlayerTextDrawGetFont=gc;static __inject__TextDrawGetFont=Td;static __inject__PlayerTextDrawIsBox=Pc;static __inject__TextDrawIsBox=Dd;static __inject__PlayerTextDrawIsProportional=Sc;static __inject__TextDrawIsProportional=vd;static __inject__PlayerTextDrawIsSelectable=yc;static __inject__TextDrawIsSelectable=wd;static __inject__PlayerTextDrawGetAlignment=Ec;static __inject__TextDrawGetAlignment=Rd;static __inject__PlayerTextDrawGetPreviewModel=Ic;static __inject__TextDrawGetPreviewModel=Ld;static __inject__PlayerTextDrawGetPreviewRot=Ac;static __inject__TextDrawGetPreviewRot=bd;static __inject__TextDrawGetPreviewVehicleColors=Od;static __inject__PlayerTextDrawGetPreviewVehicleColors=Cc}L.onExit(({next:e})=>(_.getInstances(!0).forEach(t=>t.destroy()),_.getInstances(!1).forEach(t=>t.destroy()),Te.clear(),De.clear(),e()));const[mg]=h({name:"OnPlayerClickTextDraw",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===D.TEXT_DRAW?t:_.getInstance(t,!0)}}}),[pg]=h({name:"OnPlayerClickPlayerTextDraw",defaultValue:!1,beforeEach(e,t){return{player:m.getInstance(e),textDraw:t===D.TEXT_DRAW?t:_.getInstance(t,!1)}}}),fg=Object.freeze({onPlayerClickGlobal:mg,onPlayerClickPlayer:pg});function gg(e,t){return(e&t)===t}function Pg(e,t,a){return(e&a)===a&&(t&a)!==a}function Sg(e,t){return!!(e&t)}function yg(e,t,a){return(e&a)!==a&&(t&a)===a}function Eg(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]}exports.ArtworkEnum=ct,exports.BodyPartsEnum=Ct,exports.BoneIdsEnum=Nt,exports.BulletHitTypesEnum=Ot,exports.CameraCutStylesEnum=Se,exports.CameraModesEnum=At,exports.CarModTypeEnum=vt,exports.ClickSourcesEnum=_t,exports.ConnectionStatusEnum=ut,exports.DamageDeathReasonEnum=Ke,exports.Dialog=R,exports.DialogStylesEnum=We,exports.Dynamic3DTextLabel=he,exports.Dynamic3DTextLabelEvent=Nf,exports.DynamicActor=ee,exports.DynamicActorEvent=yf,exports.DynamicArea=G,exports.DynamicAreaEvent=bf,exports.DynamicCheckPointEvent=df,exports.DynamicCheckpoint=z,exports.DynamicMapIcon=_e,exports.DynamicMapIconEvent=zp,exports.DynamicObject=B,exports.DynamicObjectEvent=jp,exports.DynamicPickup=k,exports.DynamicPickupEvent=tf,exports.DynamicRaceCP=$,exports.DynamicRaceCPEvent=ff,exports.E_STREAMER=j,exports.EditResponseTypesEnum=ht,exports.FightingStylesEnum=Et,exports.ForceSyncEnum=Tt,exports.GameMode=L,exports.GameText=ig,exports.GangZone=b,exports.GangZoneEvent=ug,exports.I18n=E,exports.InvalidEnum=D,exports.KeysEnum=mt,exports.LimitsEnum=V,exports.MapIconStyles=ke,exports.MapIconStylesEnum=It,exports.MarkerModesEnum=pt,exports.MaterialTextAlign=xt,exports.MaterialTextSizes=Ze,exports.Menu=fe,exports.MenuEvent=sg,exports.NPCEntityCheckEnum=gt,exports.NPCMoveSpeedEnum=Ge,exports.NPCMoveTypeEnum=Oe,exports.NPCPlaybackEnum=ft,exports.NPCRecordStatusEnum=H,exports.NetStats=ag,exports.Npc=N,exports.NpcEvent=tg,exports.ObjectMaterialAlignmentEnum=St,exports.ObjectMaterialTextSizeEnum=Pt,exports.Player=m,exports.PlayerEvent=Je,exports.PlayerStateEnum=ye,exports.RecordTypesEnum=Ft,exports.SelectObjectTypesEnum=yt,exports.SpecialActionsEnum=je,exports.SpectateModesEnum=Fe,exports.Streamer=P,exports.StreamerAreaTypes=Bt,exports.StreamerDistances=v,exports.StreamerItemTypes=S,exports.StreamerMiscellaneous=Be,exports.StreamerObjectTypes=xe,exports.TextDraw=_,exports.TextDrawAlignEnum=Dt,exports.TextDrawEvent=fg,exports.TextDrawFontsEnum=Ee,exports.Vehicle=C,exports.VehicleEvent=Op,exports.VehicleModelInfoEnum=Rt,exports.VehicleParamsEnum=wt,exports.WeaponEnum=Lt,exports.WeaponSkillsEnum=bt,exports.WeaponStatesEnum=Gt,exports.animateLib=Jt,exports.defineEvent=h,exports.defineHooks=Eg,exports.getAnimateDurationByLibName=im,exports.isHolding=gg,exports.isPressed=Pg,exports.isPressing=Sg,exports.isReleased=yg,exports.isValidAnimateLib=Xe,exports.isValidAnimateName=Ye,exports.rgba=I,exports.useTrigger=Ea,exports.withTriggerOptions=Ia;
|