@infernus/core 0.14.2 → 0.14.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bundle.mjs CHANGED
@@ -1,3 +1 @@
1
- import Wi from"node:util";import Ui from"iconv-lite";var vt=(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))(vt||{}),bt=(e=>(e[e.SCOREBOARD=0]="SCOREBOARD",e))(bt||{}),gt=(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))(gt||{}),Lt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.CANCEL=0]="CANCEL",e[e.FINAL=1]="FINAL",e[e.UPDATE=2]="UPDATE",e))(Lt||{}),wt=(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))(wt||{}),l=(e=>(e[e.NO_TEAM=255]="NO_TEAM",e[e.PLAYER_ID=65535]="PLAYER_ID",e[e.NPC_ID=-1]="NPC_ID",e[e.PATH_ID=-1]="PATH_ID",e[e.NODE_ID=-1]="NODE_ID",e[e.RECORD_ID=-1]="RECORD_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[e.PICKUP_ID=-1]="PICKUP_ID",e))(l||{}),Rt=(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))(Rt||{}),W=(e=>(e[e.MAX_PLAYER_NAME=24]="MAX_PLAYER_NAME",e[e.MAX_PLAYERS=1e3]="MAX_PLAYERS",e[e.MAX_VEHICLES=2e3]="MAX_VEHICLES",e[e.MAX_ACTORS=1e3]="MAX_ACTORS",e[e.MAX_OBJECTS=1e3]="MAX_OBJECTS",e[e.MAX_GANG_ZONES=1024]="MAX_GANG_ZONES",e[e.MAX_TEXT_DRAWS=2048]="MAX_TEXT_DRAWS",e[e.MAX_PLAYER_TEXT_DRAWS=256]="MAX_PLAYER_TEXT_DRAWS",e[e.MAX_MENUS=128]="MAX_MENUS",e[e.MAX_MENU_ROW=12]="MAX_MENU_ROW",e[e.MAX_MENU_COL=2]="MAX_MENU_COL",e[e.MAX_3DTEXT_GLOBAL=1024]="MAX_3DTEXT_GLOBAL",e[e.MAX_3DTEXT_PLAYER=1024]="MAX_3DTEXT_PLAYER",e[e.MAX_PICKUPS=4096]="MAX_PICKUPS",e[e.MAX_PLAYER_ATTACHED_OBJECTS=10]="MAX_PLAYER_ATTACHED_OBJECTS",e[e.MAX_CHATBUBBLE_LENGTH=144]="MAX_CHATBUBBLE_LENGTH",e[e.NPC_MAX_NODES=64]="NPC_MAX_NODES",e[e.MAX_NPCS=1e3]="MAX_NPCS",e[e.MAX_WORLD_BOUNDS=2e4]="MAX_WORLD_BOUNDS",e[e.MIN_WORLD_BOUNDS=-2e4]="MIN_WORLD_BOUNDS",e[e.MAX_TEXTDRAW_STR_LENGTH=800]="MAX_TEXTDRAW_STR_LENGTH",e[e.MAX_VEHICLE_CARRIAGES=3]="MAX_VEHICLE_CARRIAGES",e[e.MAX_GAMETEXT_STYLES=16]="MAX_GAMETEXT_STYLES",e[e.MIN_CUSTOM_SKIN_ID=20001]="MIN_CUSTOM_SKIN_ID",e[e.MAX_CUSTOM_SKIN_ID=3e4]="MAX_CUSTOM_SKIN_ID",e[e.MIN_CUSTOM_OBJECT_ID=-3e4]="MIN_CUSTOM_OBJECT_ID",e[e.MAX_CUSTOM_OBJECT_ID=-1e3]="MAX_CUSTOM_OBJECT_ID",e))(W||{}),Ot=(e=>(e[e.OFF=0]="OFF",e[e.GLOBAL=1]="GLOBAL",e[e.STREAMED=2]="STREAMED",e))(Ot||{}),Gt=(e=>(e[e.NONE=1]="NONE",e[e.DRIVER=2]="DRIVER",e[e.ONFOOT=3]="ONFOOT",e))(Gt||{}),jt=(e=>(e[e.NONE=0]="NONE",e[e.START=1]="START",e[e.PAUSE=2]="PAUSE",e))(jt||{}),fe=(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))(fe||{}),ge=(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))(ge||{}),Fe=(e=>(e[e.AUTO=-1]="AUTO",e[e.WALK=.1552086]="WALK",e[e.JOG=.56444]="JOG",e[e.SPRINT=.926784]="SPRINT",e))(Fe||{}),Ft=(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))(Ft||{}),Mt=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(Mt||{}),Pe=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.GLOBAL_OBJECT=1]="GLOBAL_OBJECT",e[e.PLAYER_OBJECT=2]="PLAYER_OBJECT",e))(Pe||{}),ut=(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))(ut||{}),Vt=(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))(Vt||{}),Qe=(e=>(e[e.MOVE=1]="MOVE",e[e.CUT=2]="CUT",e))(Qe||{}),kt=(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))(kt||{}),st=(e=>(e[e.NORMAL=1]="NORMAL",e[e.FIXED=2]="FIXED",e[e.SIDE=3]="SIDE",e))(st||{}),qe=(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))(qe||{}),Bt=(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))(Bt||{}),xt=(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))(xt||{}),Ht=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.NONE=0]="NONE",e[e.ALL=1]="ALL",e[e.OTHER=2]="OTHER",e))(Ht||{}),Wt=(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))(Wt||{}),et=(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))(et||{}),Ut=(e=>(e[e.LEFT=1]="LEFT",e[e.CENTER=2]="CENTER",e[e.RIGHT=3]="RIGHT",e))(Ut||{}),Kt=(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))(Kt||{}),G=(e=>(e[e.UNSET=-1]="UNSET",e[e.OFF=0]="OFF",e[e.ON=1]="ON",e))(G||{}),Xt=(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))(Xt||{}),Zt=(e=>(e[e.DOWN=0]="DOWN",e[e.UP=1]="UP",e))(Zt||{}),Yt=(e=>(e[e.UNKNOWN=-1]="UNKNOWN",e[e.REASON_VEHICLE=49]="REASON_VEHICLE",e[e.REASON_DROWN=53]="REASON_DROWN",e[e.REASON_COLLISION=54]="REASON_COLLISION",e[e.REASON_SPLAT=54]="REASON_SPLAT",e[e.REASON_CONNECT=200]="REASON_CONNECT",e[e.REASON_DISCONNECT=200]="REASON_DISCONNECT",e[e.REASON_SUICIDE=255]="REASON_SUICIDE",e[e.FIST=0]="FIST",e[e.BRASSKNUCKLE=1]="BRASSKNUCKLE",e[e.GOLFCLUB=2]="GOLFCLUB",e[e.NIGHTSTICK=3]="NIGHTSTICK",e[e.KNIFE=4]="KNIFE",e[e.BAT=5]="BAT",e[e.SHOVEL=6]="SHOVEL",e[e.POOLSTICK=7]="POOLSTICK",e[e.KATANA=8]="KATANA",e[e.CHAINSAW=9]="CHAINSAW",e[e.DILDO=10]="DILDO",e[e.DILDO2=11]="DILDO2",e[e.VIBRATOR=12]="VIBRATOR",e[e.VIBRATOR2=13]="VIBRATOR2",e[e.FLOWER=14]="FLOWER",e[e.CANE=15]="CANE",e[e.GRENADE=16]="GRENADE",e[e.TEARGAS=17]="TEARGAS",e[e.MOLTOV=18]="MOLTOV",e[e.COLT45=22]="COLT45",e[e.SILENCED=23]="SILENCED",e[e.DEAGLE=24]="DEAGLE",e[e.SHOTGUN=25]="SHOTGUN",e[e.SAWEDOFF=26]="SAWEDOFF",e[e.SHOTGSPA=27]="SHOTGSPA",e[e.UZI=28]="UZI",e[e.MP5=29]="MP5",e[e.AK47=30]="AK47",e[e.M4=31]="M4",e[e.TEC9=32]="TEC9",e[e.RIFLE=33]="RIFLE",e[e.SNIPER=34]="SNIPER",e[e.ROCKETLAUNCHER=35]="ROCKETLAUNCHER",e[e.HEATSEEKER=36]="HEATSEEKER",e[e.FLAMETHROWER=37]="FLAMETHROWER",e[e.MINIGUN=38]="MINIGUN",e[e.SATCHEL=39]="SATCHEL",e[e.BOMB=40]="BOMB",e[e.SPRAYCAN=41]="SPRAYCAN",e[e.FIREEXTINGUISHER=42]="FIREEXTINGUISHER",e[e.CAMERA=43]="CAMERA",e[e.NIGHT_VISION_GOGGLES=44]="NIGHT_VISION_GOGGLES",e[e.THERMAL_GOGGLES=45]="THERMAL_GOGGLES",e[e.PARACHUTE=46]="PARACHUTE",e))(Yt||{}),zt=(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))(zt||{}),Jt=(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))(Jt||{}),mt=(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))(mt||{}),ft=(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))(ft||{}),$t=(e=>(e[e.NONE=0]="NONE",e[e.DRIVER=1]="DRIVER",e[e.ONFOOT=2]="ONFOOT",e))($t||{}),Qt=(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))(Qt||{}),k=(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))(k||{}),T=(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))(T||{}),P=(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))(P||{}),lt=(e=>(e[e.GLOBAL=0]="GLOBAL",e[e.PLAYER=1]="PLAYER",e[e.DYNAMIC=2]="DYNAMIC",e))(lt||{}),_e=(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))(_e||{}),qt=(e=>(e[e.LEFT=0]="LEFT",e[e.CENTER=1]="CENTER",e[e.RIGHT=2]="RIGHT",e))(qt||{}),ot=(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))(ot||{});const ei=-1,Ki=-1,Xi=-1,Zi=-1,Yi=0,zi=-1e3,Ji=-1e3,$i=-1e3,Qi=0,ti=32,qi=300,ea=!0,_t=1,ta=e=>samp.callNative("DestroyDynamic3DTextLabel","i",e),ii=e=>!!samp.callNative("IsValidDynamic3DTextLabel","i",e),ia=(e,t,i,a,r,n=!0,s=100,o=0,_=-1,d=-1,h=k.ACTOR_SD,u=-1,I=0)=>samp.callNative("CreateDynamicActor","iffffifiiifii",e,t,i,a,r,n,s,o,_,d,h,u,I),aa=e=>samp.callNative("DestroyDynamicActor","i",e),ra=e=>!!samp.callNative("IsValidDynamicActor","i",e),na=(e,t)=>!!samp.callNative("IsDynamicActorStreamedIn","ii",e,t),sa=e=>samp.callNative("GetDynamicActorVirtualWorld","i",e),la=(e,t)=>samp.callNative("SetDynamicActorVirtualWorld","ii",e,t),oa=(e,t,i,a,r,n,s,o,_)=>samp.callNative("ApplyDynamicActorAnimation","issfiiiii",e,t,i,a,r,n,s,o,_),_a=e=>samp.callNative("ClearDynamicActorAnimations","i",e),ca=e=>{const[t,i]=samp.callNative("GetDynamicActorFacingAngle","iF",e);return{angle:t,ret:i}},da=(e,t)=>samp.callNative("SetDynamicActorFacingAngle","if",e,t),ha=e=>{const[t,i,a,r]=samp.callNative("GetDynamicActorPos","iFFF",e);return{x:t,y:i,z:a,ret:r}},ga=(e,t,i,a)=>samp.callNative("SetDynamicActorPos","ifff",e,t,i,a),ua=e=>{const[t,i]=samp.callNative("GetDynamicActorHealth","iF",e);return{health:t,ret:i}},ma=(e,t)=>samp.callNative("SetDynamicActorHealth","if",e,t),fa=(e,t=!0)=>samp.callNative("SetDynamicActorInvulnerable","ii",e,t),Pa=e=>!!samp.callNative("IsDynamicActorInvulnerable","i",e),pa=e=>samp.callNative("GetPlayerTargetDynamicActor","i",e),Ia=e=>samp.callNative("GetPlayerCameraTargetDynActor","i",e),Ca=e=>{const[t,i,a=0,r=0,n=0,s=0,o=0,_=0,d]=samp.callNative("GetDynamicActorAnimation","iSSFIIIIIii",e,32,32);return{animLib:t,animName:i,fDelta:a,loop:r,lockX:n,lockY:s,freeze:o,time:_,ret:d}},ya=(e,t,i,a=-1,r=-1,n=-1,s=0)=>samp.callNative("CreateDynamicCircle","fffiiii",e,t,i,a,r,n,s),Sa=(e,t,i,a,r,n=-1,s=-1,o=-1,_=0)=>samp.callNative("CreateDynamicCylinder","fffffiiii",e,t,i,a,r,n,s,o,_),Ea=(e,t,i,a,r=-1,n=-1,s=-1,o=0)=>samp.callNative("CreateDynamicSphere","ffffiiii",e,t,i,a,r,n,s,o),Aa=(e,t,i,a,r=-1,n=-1,s=-1,o=0)=>samp.callNative("CreateDynamicRectangle","ffffiiii",e,t,i,a,r,n,s,o),Na=(e,t,i,a,r,n,s=-1,o=-1,_=-1,d=0)=>samp.callNative("CreateDynamicCuboid","ffffffiiii",e,t,i,a,r,n,s,o,_,d),Da=(e,t=Number.MIN_VALUE,i=Number.MAX_VALUE,a=-1,r=-1,n=-1,s=0)=>samp.callNative("CreateDynamicPolygon","affiiiii",e,t,i,e.length,a,r,n,s),Ta=e=>samp.callNative("DestroyDynamicArea","i",e),va=e=>!!samp.callNative("IsValidDynamicArea","i",e),ba=e=>samp.callNative("GetDynamicAreaType","i",e),La=e=>{const[t,i]=samp.callNative("GetDynamicPolygonPoints","iAi",e,ai(e));return{points:t,ret:i}},ai=e=>samp.callNative("GetDynamicPolygonNumberPoints","i",e),wa=(e,t,i=!1)=>!!samp.callNative("IsPlayerInDynamicArea","iii",e,t,i),Ra=(e,t=!1)=>!!samp.callNative("IsPlayerInAnyDynamicArea","ii",e,t),Oa=(e,t=!1)=>!!samp.callNative("IsAnyPlayerInDynamicArea","ii",e,t),Ga=(e=!1)=>!!samp.callNative("IsAnyPlayerInAnyDynamicArea","i",e),ja=e=>{const[t,i]=samp.callNative("GetPlayerDynamicAreas","iAi",e,ri(e));return{areas:t,ret:i}},ri=e=>samp.callNative("GetPlayerNumberDynamicAreas","i",e),Fa=(e,t,i,a)=>!!samp.callNative("IsPointInDynamicArea","ifff",e,t,i,a),Ma=(e,t,i)=>!!samp.callNative("IsPointInAnyDynamicArea","fff",e,t,i),Va=(e,t,i,a,r,n,s)=>!!samp.callNative("IsLineInDynamicArea","iffffff",e,t,i,a,r,n,s),ka=(e,t,i,a,r,n)=>!!samp.callNative("IsLineInAnyDynamicArea","ffffff",e,t,i,a,r,n),Ba=(e,t,i)=>{const[a,r]=samp.callNative("GetDynamicAreasForPoint","fffAi",e,t,i,ni(e,t,i));return{areas:a,ret:r}},ni=(e,t,i)=>samp.callNative("GetNumberDynamicAreasForPoint","fff",e,t,i),xa=(e,t,i,a,r,n)=>{const[s,o]=samp.callNative("GetDynamicAreasForLine","ffffffAi",e,t,i,a,r,n,si(e,t,i,a,r,n));return{areas:s,ret:o}},si=(e,t,i,a,r,n)=>samp.callNative("GetNumberDynamicAreasForLine","ffffff",e,t,i,a,r,n),Ha=(e,t,i=lt.DYNAMIC,a=65535,r=0,n=0,s=0)=>samp.callNative("AttachDynamicAreaToObject","iiiifff",e,t,i,a,r,n,s),Wa=(e,t,i=0,a=0,r=0)=>samp.callNative("AttachDynamicAreaToPlayer","iifff",e,t,i,a,r),Ua=(e,t,i=0,a=0,r=0)=>samp.callNative("AttachDynamicAreaToVehicle","iifff",e,t,i,a,r),Ka=(e,t)=>samp.callNative("ToggleDynAreaSpectateMode","ii",e,t),Xa=e=>!!samp.callNative("IsToggleDynAreaSpectateMode","i",e),Za=(e,t,i,a,r=-1,n=-1,s=-1,o=k.CP_SD,_=-1,d=0)=>samp.callNative("CreateDynamicCP","ffffiiifii",e,t,i,a,r,n,s,o,_,d),Ya=e=>samp.callNative("DestroyDynamicCP","i",e),Pt=e=>!!samp.callNative("IsValidDynamicCP","i",e),za=(e,t,i)=>samp.callNative("TogglePlayerDynamicCP","iii",e,t,i),Ja=(e,t)=>samp.callNative("TogglePlayerAllDynamicCPs","ii",e,t),$a=(e,t)=>!!samp.callNative("IsPlayerInDynamicCP","ii",e,t),Qa=e=>samp.callNative("GetPlayerVisibleDynamicCP","i",e),qa=(e,t,i)=>{const[a,r]=samp.callNative("Streamer_GetFloatData","iiiF",e,t,i);return{val:a,ret:r}},er=(e,t,i,a)=>samp.callNative("Streamer_SetFloatData","iiif",e,t,i,a),tr=(e,t,i)=>samp.callNative("Streamer_GetIntData","iii",e,t,i),ir=(e,t,i,a)=>samp.callNative("Streamer_SetIntData","iiii",e,t,i,a),ar=(e,t,i)=>{const[a,r]=samp.callNative("Streamer_GetArrayData","iiiAi",e,t,i,li(e,t,i));return{arrayData:a,ret:r}},rr=(e,t,i,a)=>samp.callNative("Streamer_SetArrayData","iiiai",e,t,i,a,a.length),nr=(e,t,i,a)=>!!samp.callNative("Streamer_IsInArrayData","iiii",e,t,i,a),sr=(e,t,i,a)=>samp.callNative("Streamer_AppendArrayData","iiii",e,t,i,a),lr=(e,t,i,a)=>samp.callNative("Streamer_RemoveArrayData","iiii",e,t,i,a),li=(e,t,i)=>samp.callNative("Streamer_GetArrayDataLength","iii",e,t,i),or=e=>samp.callNative("Streamer_GetUpperBound","i",e);var ct=(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))(ct||{});const _r=(e,t,i,a,r,n=-1,s=-1,o=-1,_=k.MAP_ICON_SD,d=0,h=-1,u=0)=>samp.callNative("CreateDynamicMapIcon","fffiiiiifiii",e,t,i,a,r,n,s,o,_,d,h,u),cr=e=>samp.callNative("DestroyDynamicMapIcon","i",e),dr=e=>!!samp.callNative("IsValidDynamicMapIcon","i",e),hr=(e,t,i,a,r,n,s,o=k.OBJECT_SD,_=k.OBJECT_DD,d=[-1],h=[-1],u=[-1],I=[-1],S=0)=>samp.callNative("CreateDynamicObjectEx","iffffffffaaaaiiiii",e,t,i,a,r,n,s,o,_,d,h,u,I,S,d.length,h.length,u.length,I.length),gr=(e,t,i,a,r,n=k.PICKUP_SD,s=[-1],o=[-1],_=[-1],d=[-1],h=0)=>samp.callNative("CreateDynamicPickupEx","iiffffaaaaiiiii",e,t,i,a,r,n,s,o,_,d,h,s.length,o.length,_.length,d.length),ur=(e,t,i,a,r=k.CP_SD,n=[-1],s=[-1],o=[-1],_=[-1],d=0)=>samp.callNative("CreateDynamicCPEx","fffffaaaaiiiii",e,t,i,a,r,n,s,o,_,d,n.length,s.length,o.length,_.length),mr=(e,t,i,a,r,n,s,o,_=k.RACE_CP_SD,d=[-1],h=[-1],u=[-1],I=[-1],S=0)=>samp.callNative("CreateDynamicRaceCPEx","iffffffffaaaaiiiii",e,t,i,a,r,n,s,o,_,d,h,u,I,S,d.length,h.length,u.length,I.length),fr=(e,t,i,a,r,n=ct.LOCAL,s=k.MAP_ICON_SD,o=[-1],_=[-1],d=[-1],h=[-1],u=0)=>samp.callNative("CreateDynamicMapIconEx","fffiiifaaaaiiiii",e,t,i,a,r,n,s,o,_,d,h,u,o.length,_.length,d.length,h.length),Pr=(e,t,i,a=[-1],r=[-1],n=[-1],s=0)=>samp.callNative("CreateDynamicCircleEx","fffaaaiiii",e,t,i,a,r,n,a.length,r.length,n.length,s),pr=(e,t,i,a,r,n=[-1],s=[-1],o=[-1],_=0)=>samp.callNative("CreateDynamicCylinderEx","fffffaaaiiii",e,t,i,a,r,n,s,o,n.length,s.length,o.length,_),Ir=(e,t,i,a,r=[-1],n=[-1],s=[-1],o=0)=>samp.callNative("CreateDynamicSphereEx","ffffaaaiiii",e,t,i,a,r,n,s,r.length,n.length,s.length,o),Cr=(e,t,i,a,r=[-1],n=[-1],s=[-1],o=0)=>samp.callNative("CreateDynamicRectangleEx","ffffaaaiiii",e,t,i,a,r,n,s,r.length,n.length,s.length,o),yr=(e,t,i,a,r,n,s=[-1],o=[-1],_=[-1],d=0)=>samp.callNative("CreateDynamicCuboidEx","ffffffaaaiiii",e,t,i,a,r,n,s,o,_,s.length,o.length,_.length,d),Sr=(e,t=Number.MIN_VALUE,i=Number.MAX_VALUE,a=[-1],r=[-1],n=[-1],s=0)=>samp.callNative("CreateDynamicPolygonEx","affiaaaiiii",e,t,i,e.length,a,r,n,a.length,r.length,n.length,s),Er=(e,t,i,a,r,n=!0,s=100,o=k.ACTOR_SD,_=[0],d=[-1],h=[-1],u=[-1],I=0)=>samp.callNative("CreateDynamicActorEx","iffffiffaaaaiiiii",e,t,i,a,r,n,s,o,_,d,h,u,I,_.length,d.length,h.length,u.length),Ar=(e,t,i,a,r,n=3)=>{const[s,o]=samp.callNative("Streamer_GetDistanceToItem","fffiiFi",e,t,i,a,r,n);return{distance:s,ret:o}},Nr=(e,t,i,a)=>samp.callNative("Streamer_ToggleItem","iiii",e,t,i,a),Dr=(e,t,i)=>!!samp.callNative("Streamer_IsToggleItem","iii",e,t,i),Tr=(e,t,i,a=[-1])=>samp.callNative("Streamer_ToggleAllItems","iiiai",e,t,i,a,a.length),vr=(e,t,i)=>samp.callNative("Streamer_GetItemInternalID","iii",e,t,i),br=(e,t,i)=>samp.callNative("Streamer_GetItemStreamerID","iii",e,t,i),Lr=(e,t,i)=>!!samp.callNative("Streamer_IsItemVisible","iii",e,t,i),wr=(e,t,i=_t)=>samp.callNative("Streamer_DestroyAllVisibleItems","iii",e,t,i),Rr=(e,t,i=_t)=>samp.callNative("Streamer_CountVisibleItems","iii",e,t,i),Or=(e,t=_t)=>samp.callNative("Streamer_DestroyAllItems","ii",e,t),Gr=(e,t=_t)=>samp.callNative("Streamer_CountItems","ii",e,t),jr=(e,t,i,a,r=ti,n=qi,s=ei)=>{const[o=[],_=0]=samp.callNative("Streamer_GetNearbyItems","fffiAifi",e,t,i,a,r,n,s);return o.slice(0,_)},Fr=(e,t,i=ti)=>{const[a=[],r=0]=samp.callNative("Streamer_GetAllVisibleItems","iiAi",e,t,i);return a.slice(0,r)},Mr=(e,t)=>{const[i,a,r,n]=samp.callNative("Streamer_GetItemPos","iiFFF",e,t);return{x:i,y:a,z:r,ret:n}},Vr=(e,t,i,a,r)=>samp.callNative("Streamer_SetItemPos","iifff",e,t,i,a,r),kr=(e,t)=>{const[i,a,r,n]=samp.callNative("Streamer_GetItemOffset","iiFFF",e,t);return{x:i,y:a,z:r,ret:n}},Br=(e,t,i,a,r)=>samp.callNative("Streamer_SetItemOffset","iifff",e,t,i,a,r),xr=(e,t,i,a,r,n,s,o=ei,_=Ki,d=Xi,h=k.OBJECT_SD,u=k.OBJECT_DD,I=Zi,S=Yi)=>samp.callNative("CreateDynamicObject","iffffffiiiffii",e,t,i,a,r,n,s,o,_,d,h,u,I,S),Hr=e=>samp.callNative("DestroyDynamicObject","i",e),Wr=e=>!!samp.callNative("IsValidDynamicObject","i",e),Ur=e=>{const[t,i,a,r]=samp.callNative("GetDynamicObjectPos","iFFF",e);return{x:t,y:i,z:a,ret:r}},Kr=(e,t,i,a)=>samp.callNative("SetDynamicObjectPos","ifff",e,t,i,a),Xr=e=>{const[t,i,a,r]=samp.callNative("GetDynamicObjectRot","iFFF",e);return{rx:t,ry:i,rz:a,ret:r}},Zr=(e,t,i,a)=>samp.callNative("SetDynamicObjectRot","ifff",e,t,i,a),Yr=(e,t,i,a,r,n=zi,s=Ji,o=$i)=>samp.callNative("MoveDynamicObject","ifffffff",e,t,i,a,r,n,s,o),zr=e=>samp.callNative("StopDynamicObject","i",e),Jr=e=>!!samp.callNative("IsDynamicObjectMoving","i",e),$r=(e,t)=>samp.callNative("AttachCameraToDynamicObject","ii",e,t),Qr=(e,t,i,a,r,n,s,o,_=ea)=>samp.callNative("AttachDynamicObjectToObject","iiffffffi",e,t,i,a,r,n,s,o,_),qr=(e,t,i,a,r,n,s,o)=>samp.callNative("AttachDynamicObjectToPlayer","iiffffff",e,t,i,a,r,n,s,o),en=(e,t,i,a,r,n,s,o)=>samp.callNative("AttachDynamicObjectToVehicle","iiffffff",e,t,i,a,r,n,s,o),tn=(e,t)=>samp.callNative("EditDynamicObject","ii",e,t),an=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialUsed","ii",e,t),rn=(e,t)=>samp.callNative("RemoveDynamicObjectMaterial","ii",e,t),nn=(e,t,i,a,r,n=Qi)=>samp.callNative("SetDynamicObjectMaterial","iiissi",e,t,i,a,r,n),sn=(e,t)=>!!samp.callNative("IsDynamicObjectMaterialTextUsed","ii",e,t),ln=(e,t)=>samp.callNative("RemoveDynamicObjectMaterialText","ii",e,t),on=e=>samp.callNative("GetPlayerCameraTargetDynObject","i",e),_n=e=>!!samp.callNative("SetDynamicObjectNoCameraCol","i",e),cn=e=>!!samp.callNative("GetDynamicObjectNoCameraCol","i",e),dn=(e,t,i,a,r,n=-1,s=-1,o=-1,_=k.PICKUP_SD,d=-1,h=0)=>samp.callNative("CreateDynamicPickup","iifffiiifii",e,t,i,a,r,n,s,o,_,d,h),hn=e=>!!samp.callNative("DestroyDynamicPickup","i",e),gn=e=>!!samp.callNative("IsValidDynamicPickup","i",e),un=(e,t,i,a,r,n,s,o,_=-1,d=-1,h=-1,u=k.RACE_CP_SD,I=-1,S=0)=>samp.callNative("CreateDynamicRaceCP","ifffffffiiifii",e,t,i,a,r,n,s,o,_,d,h,u,I,S),mn=e=>samp.callNative("DestroyDynamicRaceCP","i",e),fn=(e,t,i)=>samp.callNative("TogglePlayerDynamicRaceCP","iii",e,t,i),Pn=(e,t)=>samp.callNative("TogglePlayerAllDynamicRaceCPs","ii",e,t),pn=(e,t)=>!!samp.callNative("IsPlayerInDynamicRaceCP","ii",e,t),In=e=>samp.callNative("GetPlayerVisibleDynamicRaceCP","i",e),Cn=()=>samp.callNative("Streamer_GetTickRate",""),yn=(e=50)=>samp.callNative("Streamer_SetTickRate","i",e),Sn=e=>samp.callNative("Streamer_GetPlayerTickRate","i",e),En=(e,t=50)=>samp.callNative("Streamer_SetPlayerTickRate","ii",e,t),An=(e=!1)=>samp.callNative("Streamer_ToggleChunkStream","i",e),Nn=()=>!!samp.callNative("Streamer_IsToggleChunkStream",""),oi=(e,t=-1)=>samp.callNative("Streamer_GetChunkTickRate","ii",e,t),_i=(e,t,i=-1)=>samp.callNative("Streamer_SetChunkTickRate","iii",e,t,i),Dn=e=>samp.callNative("Streamer_GetChunkSize","i",e),Tn=(e,t)=>samp.callNative("Streamer_SetChunkSize","ii",e,t),vn=e=>samp.callNative("Streamer_GetMaxItems","i",e),bn=(e,t)=>samp.callNative("Streamer_SetMaxItems","ii",e,t),ci=(e,t=-1)=>samp.callNative("Streamer_GetVisibleItems","ii",e,t),di=(e,t,i=-1)=>samp.callNative("Streamer_SetVisibleItems","iii",e,t,i),hi=(e,t=-1)=>{const[i,a]=samp.callNative("Streamer_GetRadiusMultiplier","iFi",e,t);return{multiplier:i,ret:a}},gi=(e,t,i=-1)=>samp.callNative("Streamer_SetRadiusMultiplier","ifi",e,t,i),Ln=()=>{const[e,t]=samp.callNative("Streamer_GetTypePriority","Ai",P.MAX_TYPES);return{priority:e,ret:t}},wn=e=>samp.callNative("Streamer_SetTypePriority","ai",e,P.MAX_TYPES),Rn=()=>{const[e,t]=samp.callNative("Streamer_GetCellDistance","F");return{distance:e,ret:t}},On=(e=600)=>samp.callNative("Streamer_SetCellDistance","f",e),Gn=()=>{const[e,t]=samp.callNative("Streamer_GetCellSize","F");return{size:e,ret:t}},jn=(e=300)=>samp.callNative("Streamer_SetCellSize","f",e),Fn=(e,t,i)=>samp.callNative("Streamer_ToggleItemStatic","iii",e,t,i),Mn=(e,t)=>!!samp.callNative("Streamer_IsToggleItemStatic","ii",e,t),Vn=(e,t,i)=>samp.callNative("Streamer_ToggleItemInvAreas","iii",e,t,i),kn=(e,t)=>!!samp.callNative("Streamer_IsToggleItemInvAreas","ii",e,t),Bn=(e,t,i)=>samp.callNative("Streamer_ToggleItemCallbacks","iii",e,t,i),xn=(e,t)=>!!samp.callNative("Streamer_IsToggleItemCallbacks","ii",e,t),Hn=e=>samp.callNative("Streamer_ToggleErrorCallback","i",e),Wn=()=>!!samp.callNative("Streamer_IsToggleErrorCallback",""),Un=e=>samp.callNative("Streamer_AmxUnloadDestroyItems","i",e),Kn=()=>samp.callNative("Streamer_ProcessActiveItems",""),Xn=(e,t)=>samp.callNative("Streamer_ToggleIdleUpdate","ii",e,t),Zn=e=>!!samp.callNative("Streamer_IsToggleIdleUpdate","i",e),Yn=(e,t)=>samp.callNative("Streamer_ToggleCameraUpdate","ii",e,t),zn=e=>!!samp.callNative("Streamer_IsToggleCameraUpdate","i",e),Jn=(e,t,i)=>samp.callNative("Streamer_ToggleItemUpdate","iii",e,t,i),$n=(e,t)=>!!samp.callNative("Streamer_IsToggleItemUpdate","ii",e,t),Qn=()=>{const[e,t]=samp.callNative("Streamer_GetLastUpdateTime","F");return{time:e,ret:t}},qn=(e,t=-1)=>samp.callNative("Streamer_Update","ii",e,t),es=(e,t,i,a,r=-1,n=-1,s=-1,o=-1,_=!0)=>samp.callNative("Streamer_UpdateEx","ifffiiiii",e,t,i,a,r,n,s,o,_),ee=new Map,ui=new Map;function ts(e,t){return typeof e=="boolean"?+e:typeof e=="number"&&!isNaN(e)?e:+t}function mi(e,t,...i){const{defaultValue:a=!0,name:r,beforeEach:n,afterEach:s,throwOnError:o=!1}=e,_=ee.get(r);if(!_||!_.length)return+a;const d=n?n(...i):{},h=[];let u=t;const I=()=>{s&&(h.length?Promise.allSettled(h).then(()=>s(d)):s(d))},S=y=>{if(u++,u<_.length){try{y&&Object.assign(d,y);const L={next:S,defaultValue:a,...d},M=_[u](L);return M instanceof Promise?(h.push(M),a):M}catch(L){const M=`executing event [name:${r},index:${u}]`;if(o)throw new Error(M);console.log(M),L instanceof Error?console.log(L):console.log(JSON.stringify(L)),I()}return a}return I(),a};return ts(S(),a)}function m(e){const{name:t,identifier:i,isNative:a=!0}=e;if(ee.has(t)){const o=`event [name:${t}] error: already defined.`;throw new Error(o)}function r(...o){if(o.length===1&&typeof o[0]=="object"&&o[0].__trigger__){const _=o[0];let d=-1;if(_.skipToNext){const h=ee.get(t);if(h&&h.length){const u=h.indexOf(_.skipToNext);u>-1&&(d=u)}}return mi(e,d,..._.args)}return mi(e,-1,...o)}function n(o,_=!1){ee.has(t)||ee.set(t,[]);const d=ee.get(t),h=(_?d.unshift(o):d.push(o))-1;return()=>{const u=ee.get(t);if(!u)return;const I=u.length-1,S=I<h?I:h;for(let y=S;y>=0;y--)if(u[y]===o){u.splice(y,1);break}return u.length===0&&ee.delete(t),u.length}}const s=[n,r];return a&&(typeof i<"u"&&samp.registerEvent(t,i),samp.on(t,r)),ui.set(t,r),s}function is(e){return ui.get(e)}function as(e){return Object.assign(e,{__trigger__:!0})}function fi(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 rs(e,t){const i={},a=Object.keys(e);for(let r=0;r<a.length;r++){const n=a[r],s=e[n];i[t(s,n,e)]=s}return i}function dt(e){return e==="__proto__"}function tt(e,t){const i=Object.keys(t);for(let a=0;a<i.length;a++){const r=i[a];if(dt(r))continue;const n=t[r],s=e[r];Array.isArray(n)?Array.isArray(s)?e[r]=tt(s,n):e[r]=tt([],n):fi(n)?fi(s)?e[r]=tt(s,n):e[r]=tt({},n):(s===void 0||n!==void 0)&&(e[r]=n)}return e}function ns(e,t){const i={...e};for(let a=0;a<t.length;a++){const r=t[a];delete i[r]}return i}const ss=new RegExp("\\p{Lu}?\\p{Ll}+|[0-9]+|\\p{Lu}+(?!\\p{Ll})|\\p{Emoji_Presentation}|\\p{Extended_Pictographic}|\\p{L}+","gu");function ls(e){return Array.from(e.match(ss)??[])}function pt(e){return ls(e).map(i=>i.toLowerCase()).join("_")}function os(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e.includes(".")||e.includes("[")||e.includes("]")}}function Pi(e){return typeof e=="string"||typeof e=="symbol"?e:Object.is(e?.valueOf?.(),-0)?"-0":String(e)}function pi(e){if(e==null)return"";if(typeof e=="string")return e;if(Array.isArray(e))return e.map(pi).join(",");const t=String(e);return t==="0"&&Object.is(Number(e),-0)?"-0":t}function _s(e){if(Array.isArray(e))return e.map(Pi);if(typeof e=="symbol")return[e];e=pi(e);const t=[],i=e.length;if(i===0)return t;let a=0,r="",n="",s=!1;for(e.charCodeAt(0)===46&&(t.push(""),a++);a<i;){const o=e[a];n?o==="\\"&&a+1<i?(a++,r+=e[a]):o===n?n="":r+=o:s?o==='"'||o==="'"?n=o:o==="]"?(s=!1,t.push(r),r=""):r+=o:o==="["?(s=!0,r&&(t.push(r),r="")):o==="."?r&&(t.push(r),r=""):r+=o,a++}return r&&t.push(r),t}function It(e,t,i){if(e==null)return i;switch(typeof t){case"string":{if(dt(t))return i;const a=e[t];return a===void 0?os(t)?It(e,_s(t),i):i:a}case"number":case"symbol":{typeof t=="number"&&(t=Pi(t));const a=e[t];return a===void 0?i:a}default:{if(Array.isArray(t))return cs(e,t,i);if(Object.is(t?.valueOf(),-0)?t="-0":t=String(t),dt(t))return i;const a=e[t];return a===void 0?i:a}}}function cs(e,t,i){if(t.length===0)return i;let a=e;for(let r=0;r<t.length;r++){if(a==null||dt(t[r]))return i;a=a[t[r]]}return a===void 0?i:a}const{encode:ds,decode:hs,encodingExists:gs}=Ui;function us(e){return e instanceof Buffer}class E{constructor(t,i){this.defaultLocale=t,this.locales=i,this.defaultLocale=pt(t),this.locales=E.snakeLocaleKeys(i)}addLocales=t=>{tt(this.locales,E.snakeLocaleKeys(t))};removeLocales=(...t)=>{this.locales=ns(this.locales,t)};$t=(t,i,a=this.defaultLocale)=>{const r=this.locales[pt(a)],n=It(this.locales[this.defaultLocale],t),s=It(r,t,n);if(typeof s>"u")throw new Error(`[i18n]: cannot find ${a}["${t}"]`);if(typeof s!="string")return JSON.stringify(s);let o=s;return i&&i.length&&(o=Wi.format(o,...i)),o};static isValidate(t){if(!gs(t))throw new Error(`[i18n]: unknown charset ${t}`)}static encodeToBuf(t,i){return E.isValidate(i),[...ds(t,i),0]}static decodeFromBuf(t,i="utf8"){E.isValidate(i);const a=us(t)?t:Buffer.from(E.getValidStr(t));return hs(a,i)}static getValidStr(t){return t.indexOf(0)===-1?t:t.slice(0,t.indexOf(0))}static snakeLocaleKeys(t){return rs(t,(i,a)=>pt(a))}static convertSpecialChar(t){const i={\u00E0:"\x97",\u00E1:"\x98",\u00E2:"\x99",\u00E4:"\x9A",\u00C0:"\x80",\u00C1:"\x81",\u00C2:"\x82",\u00C4:"\x83",\u00E8:"\x9D",\u00E9:"\x9E",\u00EA:"\x9F",\u00EB:"\xA0",\u00C8:"\x86",\u00C9:"\x87",\u00CA:"\x88",\u00CB:"\x89",\u00EC:"\xA1",\u00ED:"\xA2",\u00EE:"\xA3",\u00EF:"\xA4",\u00CC:"\x8A",\u00CD:"\x8B",\u00CE:"\x8C",\u00CF:"\x8D",\u00F2:"\xA5",\u00F3:"\xA6",\u00F4:"\xA7",\u00F6:"\xA8",\u00D2:"\x8E",\u00D3:"\x8F",\u00D4:"\x90",\u00D6:"\x91",\u00F9:"\xA9",\u00FA:"\xAA",\u00FB:"\xAB",\u00FC:"\xAC",\u00D9:"\x92",\u00DA:"\x93",\u00DB:"\x94",\u00DC:"\x95",\u00F1:"\xAE",\u00D1:"\xAD","\xA1":"@","\xBF":"\xAF","`":"\xB1"};return t.split("").map(a=>a in i?i[a]:a).join("")}}const ms=e=>!!samp.callNative("IsValidNickName","s",e),fs=(e,t)=>{samp.callNative("AllowNickNameCharacter","ii",e,t)},Ps=e=>!!samp.callNative("IsNickNameCharacterAllowed","i",e),ps=(e,t)=>!!samp.callNative("AddServerRule","ss",e,t),Is=(e,t)=>!!samp.callNative("SetServerRule","ss",e,t),Cs=e=>!!samp.callNative("IsValidServerRule","s",e),ys=e=>!!samp.callNative("RemoveServerRule","s",e),Ss=e=>{samp.callNative("AllowAdminTeleport","i",e)},Es=()=>!!samp.callNative("IsAdminTeleportAllowed",""),As=e=>{samp.callNative("AllowInteriorWeapons","i",e)},Ns=()=>!!samp.callNative("AreInteriorWeaponsAllowed",""),Ds=()=>!!samp.callNative("AreAllAnimationsEnabled",""),Ts=e=>{samp.callNative("EnableAllAnimations","i",e)},vs=e=>{const[t,i]=samp.callNative("GetConsoleVarAsString","sAi",e,64);return{consoleVarBuf:t,ret:i}},bs=e=>samp.callNative("GetConsoleVarAsInt","s",e),Ls=e=>!!samp.callNative("GetConsoleVarAsBool","s",e),ws=()=>samp.callNative("GetWeather",""),Rs=e=>samp.callNative("GetServerRuleFlags","s",e),Os=(e,t)=>!!samp.callNative("SetServerRuleFlags","si",e,t),Gs=e=>!!samp.callNative("SetModeRestartTime","f",e),js=()=>samp.callNativeFloat("GetModeRestartTime",""),Fs=(e,t,i)=>!!samp.callNative("GameTextForAll","aii",e,t,i),Ms=e=>!!samp.callNative("HideGameTextForAll","i",e),Vs=(e,t,i)=>!!samp.callNative("SendDeathMessage","iii",e,t,i),ks=()=>samp.callNative("GetMaxPlayers",""),Ct=(e,t,i)=>Math.sqrt(e*e+t*t+i*i),Bs=e=>!!samp.callNative("SetGameModeText","s",e),xs=e=>{samp.callNative("ShowNameTags","i",e)},Hs=e=>{samp.callNative("ShowPlayerMarkers","i",e)},Ws=e=>{samp.callNative("SetWorldTime","i",e)},Us=()=>samp.callNative("GetWorldTime",""),Ks=()=>{samp.callNative("EnableVehicleFriendlyFire","")},Xs=e=>{samp.callNative("SetWeather","i",e)},Zs=()=>samp.callNativeFloat("GetGravity",""),Ys=e=>{samp.callNative("SetGravity","f",e)},zs=(e,t,i,a,r)=>!!samp.callNative("CreateExplosion","fffif",e,t,i,a,r),Js=e=>{samp.callNative("EnableZoneNames","i",e)},$s=()=>{samp.callNative("UsePlayerPedAnims","")},Qs=()=>{samp.callNative("DisableInteriorEnterExits","")},qs=e=>{samp.callNative("SetNameTagDrawDistance","f",e)},el=()=>{samp.callNative("DisableNameTagLOS","")},tl=e=>!!samp.callNative("LimitGlobalChatRadius","f",e),il=e=>!!samp.callNative("LimitPlayerMarkerRadius","f",e),al=()=>samp.callNative("GetServerTickRate",""),rl=e=>{const[t,i,a]=samp.callNative("GetAnimationName","iSiSi",e,32,32);return{animLib:t,animName:i,ret:!!a}},nl=e=>{samp.callNative("EnableStuntBonusForAll","i",e)},sl=e=>{samp.callNative("ToggleChatTextReplacement","i",e)},ll=()=>!!samp.callNative("ChatTextReplacementToggled",""),ol=e=>samp.callNative("GetWeaponSlot","i",e),_l=e=>{const[t,i]=samp.callNative("GetWeaponName","iSi",e,32);return{name:t,ret:!!i}},cl=()=>samp.callNative("GetAvailableClasses",""),dl=e=>{const t=samp.callNative("GetPlayerClass","iIIFFFFIIIIII",e),[i,a=0,r=0,n=0,s=0,o=0,_=0,d=0,h=0,u=0,I=0,S=0,y]=t;return{teamId:i,modelId:a,spawnX:r,spawnY:n,spawnZ:s,zAngle:o,weapon1:_,weapon1Ammo:d,weapon2:h,weapon2Ammo:u,weapon3:I,weapon3Ammo:S,ret:!!y}},hl=(e,t,i,a,r,n,s,o,_,d,h,u,I)=>!!samp.callNative("EditPlayerClass","iiiffffiiiiii",e,t,i,a,r,n,s,o,_,d,h,u,I),gl=e=>samp.callNative("SetTeamCount","i",e),ul=(e,t,i,a,r,n,s,o,_,d,h)=>samp.callNative("AddPlayerClass","iffffiiiiii",e,t,i,a,r,n,s,o,_,d,h),ml=(e,t,i,a,r,n,s,o,_,d,h,u)=>samp.callNative("AddPlayerClassEx","iiffffiiiiii",e,t,i,a,r,n,s,o,_,d,h,u),fl=(e,t,i,a,r,n,s,o,_,d,h,u,I)=>!!samp.callNative("SetSpawnInfo","iiiffffiiiiii",e,t,i,a,r,n,s,o,_,d,h,u,I),Pl=e=>!!samp.callNative("SpawnPlayer","i",e),pl=e=>{const[t,i=0,a=0,r=0,n=0,s=0,o=0,_=0,d=0,h=0,u=0,I=0,S]=samp.callNative("GetSpawnInfo","iIIFFFFIIIIII",e);return{teamId:t,modelId:i,spawnX:a,spawnY:r,spawnZ:n,zAngle:s,weapon1:o,weapon1Ammo:_,weapon2:d,weapon2Ammo:h,weapon3:u,weapon3Ammo:I,ret:!!S}},Il=e=>samp.callNative("NetStats_GetConnectedTime","i",e),Cl=e=>samp.callNative("NetStats_MessagesReceived","i",e),yl=e=>samp.callNative("NetStats_BytesReceived","i",e),Sl=e=>samp.callNative("NetStats_MessagesSent","i",e),El=e=>samp.callNative("NetStats_BytesSent","i",e),Al=e=>samp.callNative("NetStats_MessagesRecvPerSecond","i",e),Nl=e=>samp.callNativeFloat("NetStats_PacketLossPercent","i",e),Dl=e=>samp.callNative("NetStats_ConnectionStatus","i",e),Tl=e=>{const[t,i]=samp.callNative("NetStats_GetIpPort","iSi",e,134);return{ipPort:t,ret:i}},vl=e=>!!samp.callNative("IsPlayerAdmin","i",e),bl=(e,t)=>!!samp.callNative("SetPlayerAdmin","ii",e,t),Ll=e=>!!samp.callNative("Kick","i",e),wl=e=>!!samp.callNative("Ban","i",e),Rl=e=>{const[t,i]=samp.callNative("GetPlayerNetworkStats","iSi",e,1024);return{stats:t,ret:!!i}},Ol=()=>{const[e,t]=samp.callNative("GetNetworkStats","Si",1024);return{stats:e,ret:!!t}},Gl=(e,t)=>!!samp.callNative("BlockIpAddress","si",e,t),jl=e=>!!samp.callNative("UnBlockIpAddress","s",e),Fl=(e,t)=>{const[i,a]=samp.callNative("gpci","iAi",e,41);return{val:E.decodeFromBuf(E.getValidStr(i),t),ret:a}},Ml=(e,t,i,a,r)=>!!samp.callNative("SendClientCheck","iiiii",e,t,i,a,r),Vl=()=>!!samp.callNative("ClearBanList",""),kl=e=>!!samp.callNative("IsBanned","s",e),Bl=e=>samp.callNative("GetPlayerRawIp","i",e),xl=e=>{const[t,i]=samp.callNative("GetPlayerIp","iSi",e,128);return{ip:t,ret:i}},Hl=e=>{const[t,i]=samp.callNative("GetPlayerVersion","iSi",e,24);return{version:t,ret:i}},N=e=>{if(typeof e=="number")return e;if(typeof+e=="number"&&!isNaN(+e))return+e;if(e.charAt(0)==="#")return e.length===4?parseInt(e.charAt(1)+e.charAt(1)+e.charAt(2)+e.charAt(2)+e.charAt(3)+e.charAt(3)+"FF",16):e.length===7?parseInt(e.slice(1,e.length)+"FF",16):e.length===9?parseInt(e.slice(1,e.length),16):255;const t=(e.match(/([0-9])+/g)||[]).map(a=>parseInt(a,10));if(t.length!==4&&t.length!==3)return 255;t.length===3?t.push(255):t[3]=t[3]<1?Math.floor(t[3]*255):255;let i=0;return t.reverse().forEach((a,r)=>{a!==0&&(i+=Math.pow(16,r*2)*a)}),i},Wl=(e,t)=>!!samp.callNative("TogglePlayerWidescreen","ii",e,t),Ul=e=>!!samp.callNative("IsPlayerWidescreenToggled","i",e),Kl=(e,t)=>samp.callNative("GetPlayerSkillLevel","ii",e,t),Xl=e=>samp.callNative("GetPlayerWeather","i",e),Zl=e=>{const[t=0,i=0,a=0,r=0,n]=samp.callNative("GetPlayerWorldBounds","iFFFF",e);return{xMax:t,xMin:i,yMax:a,yMin:r,ret:!!n}},Yl=e=>samp.callNativeFloat("GetPlayerZAim","i",e),zl=e=>{const[t=0,i=0,a=0,r]=samp.callNative("GetPlayerSurfingOffsets","iFFF",e);return{fOffsetX:t,fOffsetY:i,fOffsetZ:a,ret:!!r}},Jl=e=>{const[t=0,i=0,a=0,r=0,n]=samp.callNative("GetPlayerRotationQuat","iFFFF",e);return{w:t,x:i,y:a,z:r,ret:!!n}},$l=e=>samp.callNative("GetPlayerDialogID","i",e),Ql=e=>samp.callNative("GetPlayerSpectateID","i",e),ql=e=>samp.callNative("GetPlayerSpectateType","i",e),eo=(e,t)=>!!samp.callNative("SetPlayerGravity","if",e,t),to=e=>samp.callNativeFloat("GetPlayerGravity","i",e),io=e=>!!samp.callNative("IsPlayerSpawned","i",e),ao=e=>!!samp.callNative("IsPlayerControllable","i",e),ro=e=>!!samp.callNative("IsPlayerCameraTargetEnabled","i",e),no=(e,t)=>!!samp.callNative("TogglePlayerGhostMode","ii",e,t),so=e=>!!samp.callNative("GetPlayerGhostMode","i",e),lo=e=>samp.callNative("GetPlayerBuildingsRemoved","i",e),oo=(e,t)=>!!samp.callNative("RemovePlayerWeapon","ii",e,t),_o=e=>!!samp.callNative("HidePlayerDialog","i",e),co=e=>!!samp.callNative("IsPlayerUsingOfficialClient","i",e),ho=(e,t)=>!!samp.callNative("AllowPlayerTeleport","ii",e,t),go=e=>!!samp.callNative("IsPlayerTeleportAllowed","i",e),uo=(e,t)=>!!samp.callNative("AllowPlayerWeapons","i",e,t),mo=e=>!!samp.callNative("ArePlayerWeaponsAllowed","i",e),fo=(e,t,i,a)=>!!samp.callNative("GameTextForPlayer","iaii",e,t,i,a),Po=(e,t)=>!!samp.callNative("HasGameText","ii",e,t),po=(e,t,i,a)=>!!samp.callNative("SendDeathMessageToPlayer","iiii",e,t,i,a),Io=(e,t)=>!!samp.callNative("HideGameTextForPlayer","ii",e,t),Co=e=>!!samp.callNative("IsPlayerNPC","i",e),yo=(e,t,i,a)=>!!samp.callNative("SetPlayerPos","ifff",e,t,i,a),So=(e,t,i,a)=>!!samp.callNative("SetPlayerPosFindZ","ifff",e,t,i,a),Eo=e=>{const[t,i,a,r]=samp.callNative("GetPlayerPos","iFFF",e);return{x:t,y:i,z:a,ret:!!r}},Ao=(e,t)=>!!samp.callNative("SetPlayerFacingAngle","if",e,t),No=e=>{const[t,i]=samp.callNative("GetPlayerFacingAngle","iF",e);return{angle:t,ret:!!i}},Do=(e,t,i,a,r)=>!!samp.callNative("IsPlayerInRangeOfPoint","iffff",e,t,i,a,r),To=(e,t,i,a)=>samp.callNativeFloat("GetPlayerDistanceFromPoint","ifff",e,t,i,a),vo=(e,t)=>!!samp.callNative("IsPlayerStreamedIn","ii",e,t),bo=(e,t)=>!!samp.callNative("SetPlayerInterior","ii",e,t),Lo=e=>samp.callNative("GetPlayerInterior","i",e),wo=(e,t)=>!!samp.callNative("SetPlayerHealth","if",e,t),Ro=e=>{const[t,i]=samp.callNative("GetPlayerHealth","iF",e);return{health:t,ret:!!i}},Oo=(e,t)=>!!samp.callNative("SetPlayerArmour","if",e,t),Go=e=>{const[t,i]=samp.callNative("GetPlayerArmour","iF",e);return{armour:t,ret:!!i}},jo=(e,t,i)=>!!samp.callNative("SetPlayerAmmo","iii",e,t,i),Fo=e=>samp.callNative("GetPlayerAmmo","i",e),Mo=e=>samp.callNative("GetPlayerWeaponState","i",e),Vo=e=>samp.callNative("GetPlayerTargetPlayer","i",e),ko=(e,t)=>!!samp.callNative("SetPlayerTeam","ii",e,t),Bo=e=>samp.callNative("GetPlayerTeam","i",e),xo=(e,t)=>!!samp.callNative("SetPlayerScore","ii",e,t),Ho=e=>samp.callNative("GetPlayerScore","i",e),Wo=e=>samp.callNative("GetPlayerDrunkLevel","i",e),Uo=(e,t)=>!!samp.callNative("SetPlayerDrunkLevel","ii",e,t),Ko=(e,t)=>!!samp.callNative("SetPlayerColor","ii",e,N(t)),Xo=e=>samp.callNative("GetPlayerColor","i",e),Zo=(e,t)=>!!samp.callNative("SetPlayerSkin","ii",e,t),Yo=e=>samp.callNative("GetPlayerSkin","i",e),zo=(e,t,i)=>!!samp.callNative("GivePlayerWeapon","iii",e,t,i),Jo=e=>!!samp.callNative("ResetPlayerWeapons","i",e),$o=(e,t)=>!!samp.callNative("SetPlayerArmedWeapon","ii",e,t),Qo=(e,t)=>{const[i,a,r]=samp.callNative("GetPlayerWeaponData","iiII",e,t);return{weapons:i,ammo:a,ret:!!r}},qo=(e,t)=>!!samp.callNative("GivePlayerMoney","ii",e,t),e_=e=>!!samp.callNative("ResetPlayerMoney","i",e),t_=e=>samp.callNative("GetPlayerMoney","i",e),i_=e=>samp.callNative("GetPlayerState","i",e),a_=e=>samp.callNative("GetPlayerPing","i",e),r_=e=>samp.callNative("GetPlayerWeapon","i",e),n_=e=>{const[t,i,a,r]=samp.callNative("GetPlayerKeys","iIII",e);return{keys:t,upDown:i,leftRight:a,ret:!!r}},s_=(e,t,i)=>!!samp.callNative("SetPlayerTime","iii",e,t,i),l_=e=>{const[t,i,a]=samp.callNative("GetPlayerTime","iII",e);return{hour:t,minute:i,ret:!!a}},o_=(e,t)=>!!samp.callNative("TogglePlayerClock","ii",e,t),__=(e,t)=>!!samp.callNative("SetPlayerWeather","ii",e,t),c_=e=>!!samp.callNative("ForceClassSelection","i",e),d_=(e,t)=>!!samp.callNative("SetPlayerWantedLevel","ii",e,t),h_=e=>samp.callNative("GetPlayerWantedLevel","i",e),g_=(e,t)=>!!samp.callNative("SetPlayerFightingStyle","ii",e,t),u_=e=>samp.callNative("GetPlayerFightingStyle","i",e),m_=(e,t,i,a)=>!!samp.callNative("SetPlayerVelocity","ifff",e,t,i,a),f_=e=>{const[t,i,a,r]=samp.callNative("GetPlayerVelocity","iFFF",e);return{x:t,y:i,z:a,ret:!!r}},P_=(e,t,i)=>!!samp.callNative("PlayCrimeReportForPlayer","iii",e,t,i),p_=(e,t,i,a,r,n,s=!1)=>!!samp.callNative("PlayAudioStreamForPlayer","isffffi",e,t,i,a,r,n,s),I_=e=>!!samp.callNative("StopAudioStreamForPlayer","i",e),C_=(e,t)=>!!samp.callNative("SetPlayerShopName","is",e,t),y_=(e,t,i)=>!!samp.callNative("SetPlayerSkillLevel","iii",e,t,i),S_=e=>samp.callNative("GetPlayerSurfingVehicleID","i",e),E_=e=>samp.callNative("GetPlayerSurfingObjectID","i",e),A_=e=>samp.callNative("GetPlayerSurfingPlayerObjectID","i",e),N_=(e,t,i,a,r,n)=>!!samp.callNative("RemoveBuildingForPlayer","iiffff",e,t,i,a,r,n),D_=e=>{const[t,i,a,r,n,s,o]=samp.callNative("GetPlayerLastShotVectors","iFFFFFF",e);return{fOriginX:t,fOriginY:i,fOriginZ:a,fHitPosX:r,fHitPosY:n,fHitPosZ:s,ret:!!o}},T_=(e,t,i)=>!!samp.callNative("PutPlayerInVehicle","iii",e,t,i),v_=e=>samp.callNative("GetPlayerVehicleID","i",e),b_=e=>samp.callNative("GetPlayerVehicleSeat","i",e),L_=e=>!!samp.callNative("RemovePlayerFromVehicle","i",e),w_=(e,t)=>!!samp.callNative("TogglePlayerControllable","ii",e,t),R_=(e,t,i,a,r)=>!!samp.callNative("PlayerPlaySound","iifff",e,t,i,a,r),O_=(e,t,i,a,r,n,s,o,_,d)=>!!samp.callNative("ApplyAnimation","issfiiiiii",e,t,i,a,r,n,s,o,_,d),G_=(e,t)=>!!samp.callNative("ClearAnimations","ii",e,t),j_=e=>samp.callNative("GetPlayerAnimationIndex","i",e),F_=e=>samp.callNative("GetPlayerSpecialAction","i",e),M_=(e,t)=>!!samp.callNative("SetPlayerSpecialAction","ii",e,t),V_=(e,t)=>!!samp.callNative("DisableRemoteVehicleCollisions","ii",e,t),k_=(e,t)=>!!samp.callNative("SetPlayerVirtualWorld","ii",e,t),B_=e=>samp.callNative("GetPlayerVirtualWorld","i",e),x_=(e,t)=>!!samp.callNative("EnableStuntBonusForPlayer","ii",e,t),H_=e=>samp.callNative("GetPlayerCustomSkin","i",e),W_=(e,t,i,a,r,n)=>!!samp.callNative("CreateExplosionForPlayer","ifffif",e,t,i,a,r,n),U_=(e,t,i)=>!!samp.callNative("StartRecordingPlayerData","iis",e,t,i),K_=e=>!!samp.callNative("StopRecordingPlayerData","i",e),X_=(e,t)=>!!samp.callNative("TogglePlayerSpectating","ii",e,t),Z_=(e,t,i)=>!!samp.callNative("PlayerSpectatePlayer","iii",e,t,i),Y_=(e,t,i)=>!!samp.callNative("PlayerSpectateVehicle","iii",e,t,i),z_=e=>!!samp.callNative("IsPlayerConnected","i",e),J_=(e,t)=>!!samp.callNative("IsPlayerInVehicle","ii",e,t),$_=e=>!!samp.callNative("IsPlayerInAnyVehicle","i",e),Q_=(e,t,i,a,r)=>!!samp.callNative("SetPlayerWorldBounds","iffff",e,t,i,a,r),q_=e=>!!samp.callNative("ClearPlayerWorldBounds","i",e),ec=(e,t,i)=>!!samp.callNative("SetPlayerMarkerForPlayer","iii",e,t,N(i));function tc(e,t){return samp.callNative("GetPlayerMarkerForPlayer","ii",e,t)}const ic=(e,t,i)=>!!samp.callNative("ShowPlayerNameTagForPlayer","iii",e,t,i),ac=(e,t,i,a,r,n,s,o)=>!!samp.callNative("SetPlayerMapIcon","iifffiii",e,t,i,a,r,n,N(s),o),rc=(e,t)=>!!samp.callNative("RemovePlayerMapIcon","ii",e,t),nc=(e,t,i,a)=>!!samp.callNative("SetPlayerCameraPos","ifff",e,t,i,a),sc=(e,t,i,a,r)=>!!samp.callNative("SetPlayerCameraLookAt","ifffi",e,t,i,a,r),lc=e=>!!samp.callNative("SetCameraBehindPlayer","i",e),oc=e=>{const[t,i,a,r]=samp.callNative("GetPlayerCameraPos","iFFF",e);return{x:t,y:i,z:a,ret:!!r}},_c=e=>{const[t,i,a,r]=samp.callNative("GetPlayerCameraFrontVector","iFFF",e);return{x:t,y:i,z:a,ret:!!r}},cc=e=>samp.callNative("GetPlayerCameraMode","i",e),dc=(e,t)=>!!samp.callNative("EnablePlayerCameraTarget","ii",e,t),hc=e=>samp.callNative("GetPlayerCameraTargetObject","i",e),gc=e=>samp.callNative("GetPlayerCameraTargetVehicle","i",e),uc=e=>samp.callNative("GetPlayerCameraTargetPlayer","i",e),mc=e=>samp.callNative("GetPlayerCameraTargetActor","i",e),fc=e=>samp.callNativeFloat("GetPlayerCameraAspectRatio","i",e),Pc=e=>samp.callNativeFloat("GetPlayerCameraZoom","i",e),pc=(e,t)=>!!samp.callNative("AttachCameraToObject","ii",e,t),Ic=(e,t)=>!!samp.callNative("AttachCameraToPlayerObject","ii",e,t),Cc=(e,t,i,a,r,n,s,o,_)=>!!samp.callNative("InterpolateCameraPos","iffffffii",e,t,i,a,r,n,s,o,_),yc=(e,t,i,a,r,n,s,o,_)=>!!samp.callNative("InterpolateCameraLookAt","iffffffii",e,t,i,a,r,n,s,o,_),Sc=e=>!!samp.callNative("IsPlayerCuffed","i",e),Ec=e=>!!samp.callNative("IsPlayerInDriveByMode","i",e),Ac=e=>!!samp.callNative("IsPlayerUsingOmp","i",e),Nc=e=>!!samp.callNative("PlayerHasClockEnabled","i",e),Dc=e=>samp.callNative("GetActorSkin","i",e),Tc=(e,t)=>!!samp.callNative("SetActorSkin","ii",e,t),vc=e=>{const[t=0,i=0,a=0,r=0,n=0,s]=samp.callNative("GetActorSpawnInfo","iIFFFF",e);return{skinId:t,fX:i,fY:a,fZ:r,fAngle:n,ret:!!s}},bc=e=>{const[t,i,a=0,r=0,n=0,s=0,o=0,_=0,d]=samp.callNative("GetActorAnimation","iSiSiFIIIII",e,32,32);return{animLib:t,animName:i,fDelta:a,loop:r,lockX:n,lockY:s,freeze:o,time:_,ret:!!d}},Lc=(e,t,i,a,r)=>samp.callNative("CreateActor","iffff",e,t,i,a,r),wc=e=>!!samp.callNative("DestroyActor","i",e),Rc=(e,t)=>!!samp.callNative("IsActorStreamedIn","ii",e,t),Oc=(e,t)=>!!samp.callNative("SetActorVirtualWorld","ii",e,t),Gc=e=>samp.callNative("GetActorVirtualWorld","i",e),jc=(e,t,i,a,r,n,s,o,_)=>!!samp.callNative("ApplyActorAnimation","issfiiiii",e,t,i,a,r,n,s,o,_),Fc=e=>!!samp.callNative("ClearActorAnimations","i",e),Mc=(e,t,i,a)=>!!samp.callNative("SetActorPos","ifff",e,t,i,a),Vc=e=>{const[t,i,a,r]=samp.callNative("GetActorPos","iFFF",e);return{x:t,y:i,z:a,ret:!!r}},kc=(e,t)=>!!samp.callNative("SetActorFacingAngle","if",e,t),Bc=e=>{const[t,i]=samp.callNative("GetActorFacingAngle","iF",e);return{angle:t,ret:!!i}},xc=(e,t)=>!!samp.callNative("SetActorHealth","if",e,t),Hc=e=>{const[t,i]=samp.callNative("GetActorHealth","iF",e);return{health:t,ret:!!i}},Wc=(e,t)=>!!samp.callNative("SetActorInvulnerable","ii",e,t),Uc=e=>!!samp.callNative("IsActorInvulnerable","i",e),Kc=e=>!!samp.callNative("IsValidActor","i",e),Xc=e=>samp.callNative("NPC_Create","s",e),Zc=e=>!!samp.callNative("NPC_Destroy","i",e),Yc=e=>!!samp.callNative("NPC_IsValid","i",e),zc=e=>!!samp.callNative("NPC_Spawn","i",e),Jc=e=>!!samp.callNative("NPC_Respawn","i",e),$c=(e,t,i,a)=>!!samp.callNative("NPC_SetPos","ifff",e,t,i,a),Qc=(e,t,i,a)=>!!samp.callNative("NPC_SetRot","ifff",e,t,i,a),qc=e=>{const[t,i,a,r]=samp.callNative("NPC_GetRot","iFFF",e);return{rX:t,rY:i,rZ:a,ret:!!r}},ed=(e,t)=>!!samp.callNative("NPC_SetFacingAngle","if",e,t),td=e=>{const[t,i]=samp.callNative("NPC_GetFacingAngle","iF",e);return{angle:t,ret:!!i}},id=(e,t)=>!!samp.callNative("NPC_SetVirtualWorld","ii",e,t),ad=e=>samp.callNative("NPC_GetVirtualWorld","i",e),rd=(e,t,i,a,r,n)=>!!samp.callNative("NPC_Move","ifffif",e,t,i,a,r,n),nd=(e,t,i,a)=>!!samp.callNative("NPC_MoveToPlayer","iiif",e,t,i,a),sd=e=>!!samp.callNative("NPC_StopMove","i",e),ld=e=>!!samp.callNative("NPC_IsMoving","i",e),od=(e,t)=>!!samp.callNative("NPC_IsMovingToPlayer","ii",e,t),_d=(e,t)=>!!samp.callNative("NPC_SetSkin","ii",e,t),cd=e=>samp.callNative("NPC_GetSkin","i",e),dd=(e,t)=>!!samp.callNative("NPC_IsStreamedIn","ii",e,t),hd=e=>!!samp.callNative("NPC_IsAnyStreamedIn","i",e),gd=(e,t)=>!!samp.callNative("NPC_SetInterior","ii",e,t),ud=e=>samp.callNative("NPC_GetInterior","i",e),md=(e,t)=>!!samp.callNative("NPC_SetHealth","if",e,t),fd=e=>samp.callNativeFloat("NPC_GetHealth","i",e),Pd=(e,t)=>!!samp.callNative("NPC_SetArmour","if",e,t),pd=e=>samp.callNativeFloat("NPC_GetArmour","i",e),Id=e=>!!samp.callNative("NPC_IsDead","i",e),Cd=(e,t,i,a,r,n,s,o,_,d)=>!!samp.callNative("NPC_ApplyAnimation","issfiiiiii",e,t,i,a,r,n,s,o,_,d),yd=(e,t)=>!!samp.callNative("NPC_SetWeapon","ii",e,t),Sd=e=>samp.callNative("NPC_GetWeapon","i",e),Ed=(e,t)=>!!samp.callNative("NPC_SetAmmo","ii",e,t),Ad=e=>samp.callNative("NPC_GetAmmo","i",e),Nd=(e,t,i,a)=>!!samp.callNative("NPC_SetKeys","iiii",e,t,i,a),Dd=e=>{const[t,i,a,r]=samp.callNative("NPC_GetKeys","iIII",e);return{upAndDown:t,leftAndDown:i,keys:a,ret:!!r}},Td=(e,t,i)=>!!samp.callNative("NPC_SetWeaponSkillLevel","iii",e,t,i),vd=(e,t)=>samp.callNative("NPC_GetWeaponSkillLevel","ii",e,t),bd=(e,t=-1,i=!1)=>!!samp.callNative("NPC_MeleeAttack","iii",e,t,i),Ld=e=>!!samp.callNative("NPC_StopMeleeAttack","i",e),wd=e=>!!samp.callNative("NPC_IsMeleeAttacking","i",e),Rd=(e,t)=>!!samp.callNative("NPC_SetFightingStyle","ii",e,t),Od=e=>samp.callNative("NPC_GetFightingStyle","i",e),Gd=(e,t=!0)=>!!samp.callNative("NPC_EnableReloading","ii",e,t),jd=e=>!!samp.callNative("NPC_IsReloadEnabled","i",e),Fd=e=>!!samp.callNative("NPC_IsReloading","i",e),Md=(e,t=!0)=>!!samp.callNative("NPC_EnableInfiniteAmmo","ii",e,t),Vd=e=>!!samp.callNative("NPC_IsInfiniteAmmoEnabled","i",e),kd=(e,t)=>!!samp.callNative("NPC_SetWeaponState","ii",e,t),Bd=e=>samp.callNative("NPC_GetWeaponState","i",e),xd=(e,t)=>!!samp.callNative("NPC_SetAmmoInClip","ii",e,t),Hd=e=>samp.callNative("NPC_GetAmmoInClip","i",e),Wd=(e,t,i,a,r,n,s,o=0,_=0,d=0,h=!0,u=ge.ALL)=>!!samp.callNative("NPC_Shoot","iiiffffffii",e,t,i,a,r,n,s,o,_,d,h,u),Ud=e=>!!samp.callNative("NPC_IsShooting","i",e),Kd=(e,t,i,a,r=!1,n=-1,s=!0,o=0,_=0,d=0,h=ge.ALL)=>!!samp.callNative("NPC_AimAt","ifffiiifffi",e,t,i,a,r,n,s,o,_,d,h),Xd=(e,t,i=!1,a=-1,r=!0,n=0,s=0,o=0,_=0,d=0,h=0,u=ge.ALL)=>!!samp.callNative("NPC_AimAtPlayer","iiiiiffffffi",e,t,i,a,r,n,s,o,_,d,h,u),Zd=e=>!!samp.callNative("NPC_StopAim","i",e),Yd=e=>!!samp.callNative("NPC_IsAiming","i",e),zd=(e,t)=>!!samp.callNative("NPC_IsAimingAtPlayer","ii",e,t),Jd=(e,t,i)=>!!samp.callNative("NPC_SetWeaponAccuracy","iif",e,t,i),$d=(e,t)=>samp.callNativeFloat("NPC_GetWeaponAccuracy","ii",e,t),Qd=(e,t,i)=>!!samp.callNative("NPC_SetWeaponReloadTime","iii",e,t,i),qd=(e,t)=>samp.callNative("NPC_GetWeaponReloadTime","ii",e,t),eh=(e,t)=>samp.callNative("NPC_GetWeaponActualReloadTime","ii",e,t),th=(e,t,i)=>!!samp.callNative("NPC_SetWeaponShootTime","iii",e,t,i),ih=(e,t)=>samp.callNative("NPC_GetWeaponShootTime","ii",e,t),ah=(e,t,i)=>!!samp.callNative("NPC_SetWeaponClipSize","iii",e,t,i),rh=(e,t)=>samp.callNative("NPC_GetWeaponClipSize","ii",e,t),nh=(e,t)=>samp.callNative("NPC_GetWeaponActualClipSize","ii",e,t),sh=(e,t,i,a)=>!!samp.callNative("NPC_EnterVehicle","iiii",e,t,i,a),lh=e=>!!samp.callNative("NPC_ExitVehicle","i",e),oh=(e,t,i)=>!!samp.callNative("NPC_PutInVehicle","iii",e,t,i),_h=e=>!!samp.callNative("NPC_RemoveFromVehicle","i",e),ch=e=>samp.callNative("NPC_GetVehicle","i",e),dh=e=>samp.callNative("NPC_GetVehicleSeat","i",e),hh=e=>samp.callNative("NPC_GetEnteringVehicle","i",e),gh=e=>samp.callNative("NPC_GetEnteringVehicleSeat","i",e),uh=e=>!!samp.callNative("NPC_IsEnteringVehicle","i",e),mh=(e,t)=>!!samp.callNative("NPC_UseVehicleSiren","ii",e,t),fh=e=>!!samp.callNative("NPC_IsVehicleSirenUsed","i",e),Ph=(e,t)=>!!samp.callNative("NPC_SetVehicleHealth","if",e,t),ph=e=>samp.callNativeFloat("NPC_GetVehicleHealth","i",e),Ih=(e,t)=>!!samp.callNative("NPC_SetVehicleHydraThrusters","ii",e,t),Ch=e=>samp.callNative("NPC_GetVehicleHydraThrusters","i",e),yh=(e,t)=>!!samp.callNative("NPC_SetVehicleGearState","ii",e,t),Sh=e=>samp.callNative("NPC_GetVehicleGearState","i",e),Eh=(e,t)=>!!samp.callNative("NPC_SetVehicleTrainSpeed","if",e,t),Ah=e=>samp.callNativeFloat("NPC_GetVehicleTrainSpeed","i",e),Nh=e=>!!samp.callNative("NPC_ResetAnimation","i",e),Dh=(e,t,i,a,r,n,s,o)=>!!samp.callNative("NPC_SetAnimation","iifiiiii",e,t,i,a,r,n,s,o),Th=e=>{const[t,i,a,r,n,s,o,_]=samp.callNative("NPC_GetAnimation","iIFIIIII",e);return{animationId:t,delta:i,loop:!!a,lockX:!!r,lockY:!!n,freeze:!!s,time:o,ret:!!_}},vh=e=>!!samp.callNative("NPC_ClearAnimations","i",e),bh=(e,t)=>!!samp.callNative("NPC_SetSpecialAction","ii",e,t),Lh=e=>samp.callNative("NPC_GetSpecialAction","i",e),wh=(e,t,i=!1,a=0,r=0,n=0,s=0,o=0,_=0)=>!!samp.callNative("NPC_StartPlayback","isiffffff",e,t,i,a,r,n,s,o,_),Rh=(e,t,i=!1,a=0,r=0,n=0,s=0,o=0,_=0)=>!!samp.callNative("NPC_StartPlaybackEx","iiiffffff",e,t,i,a,r,n,s,o,_),Oh=e=>!!samp.callNative("NPC_StopPlayback","i",e),Gh=(e,t=!0)=>!!samp.callNative("NPC_PausePlayback","ii",e,t),jh=e=>!!samp.callNative("NPC_IsPlayingPlayback","i",e),Fh=e=>!!samp.callNative("NPC_IsPlaybackPaused","i",e),Mh=(e,t,i,a,r,n)=>!!samp.callNative("NPC_PlayNode","iiiffi",e,t,i,a,r,n),Vh=e=>!!samp.callNative("NPC_StopPlayingNode","i",e),kh=e=>!!samp.callNative("NPC_PausePlayingNode","i",e),Bh=e=>!!samp.callNative("NPC_ResumePlayingNode","i",e),xh=e=>!!samp.callNative("NPC_IsPlayingNodePaused","i",e),Hh=e=>!!samp.callNative("NPC_IsPlayingNode","i",e),Wh=(e,t,i)=>!!samp.callNative("NPC_ChangeNode","iii",e,t,i),Uh=(e,t)=>!!samp.callNative("NPC_UpdateNodePoint","ii",e,t),Kh=(e,t=!0)=>!!samp.callNative("NPC_SetInvulnerable","ii",e,t),Xh=e=>!!samp.callNative("NPC_IsInvulnerable","i",e),Zh=(e,t,i,a)=>!!samp.callNative("NPC_SetSurfingOffsets","ifff",e,t,i,a),Yh=e=>{const[t,i,a,r]=samp.callNative("NPC_GetSurfingOffsets","iFFF",e);return{x:t,y:i,z:a,ret:!!r}},zh=(e,t)=>!!samp.callNative("NPC_SetSurfingVehicle","ii",e,t),Jh=e=>samp.callNative("NPC_GetSurfingVehicle","i",e),$h=(e,t)=>!!samp.callNative("NPC_SetSurfingObject","ii",e,t),Qh=e=>samp.callNative("NPC_GetSurfingObject","i",e),qh=(e,t)=>!!samp.callNative("NPC_SetSurfingPlayerObject","ii",e,t),eg=e=>samp.callNative("NPC_GetSurfingPlayerObject","i",e),tg=e=>!!samp.callNative("NPC_ResetSurfingData","i",e),ig=e=>!!samp.callNative("NPC_IsSpawned","i",e),ag=(e,t,i)=>!!samp.callNative("NPC_Kill","iii",e,t,i),rg=(e,t,i,a)=>!!samp.callNative("NPC_SetVelocity","ifff",e,t,i,a),ng=e=>{const[t,i,a,r]=samp.callNative("NPC_GetVelocity","iFFF",e);return{x:t,y:i,z:a,ret:r}},sg=e=>samp.callNative("NPC_GetPlayerAimingAt","i",e),lg=e=>samp.callNative("NPC_GetPlayerMovingTo","i",e),og=e=>{const[t,i,a,r]=samp.callNative("NPC_GetPosMovingTo","iFFF",e);return{x:t,y:i,z:a,ret:!!r}},_g=e=>samp.callNative("NPC_GetCustomSkin","i",e),cg=(e,t,i,a)=>!!samp.callNative("NPC_SetAngleToPos","ifff",e,t,i,a),dg=(e,t)=>!!samp.callNative("NPC_SetAngleToPlayer","ii",e,t),hg=e=>{const[t=0,i=0,a=0,r=0,n=0,s=0,o]=samp.callNative("GetVehicleSpawnInfo","iFFFFII",e);return{fX:t,fY:i,fZ:a,fRot:r,color1:n,color2:s,ret:!!o}},gg=(e,t,i,a,r,n,s,o,_=-2,d=-2)=>!!samp.callNative("SetVehicleSpawnInfo","iiffffiiii",e,t,i,a,r,n,s,o,_,d),ug=e=>{const[t=0,i=0,a]=samp.callNative("GetVehicleColor","iII",e);return{color1:t,color2:i,ret:!!a}},mg=e=>samp.callNative("GetVehiclePaintjob","i",e),fg=e=>samp.callNative("GetVehicleInterior","i",e),Pg=e=>{const[t,i]=samp.callNative("GetVehicleNumberPlate","iSi",e,33);return{plate:t,ret:!!i}},pg=(e,t)=>!!samp.callNative("SetVehicleRespawnDelay","ii",e,t),Ig=e=>samp.callNative("GetVehicleRespawnDelay","i",e),Cg=e=>samp.callNative("GetVehicleCab","i",e),yg=e=>samp.callNative("GetVehicleOccupiedTick","i",e),Sg=(e,t)=>samp.callNative("SetVehicleOccupiedTick","ii",e,t),Eg=e=>!!samp.callNative("HasVehicleBeenOccupied","i",e),Ag=e=>!!samp.callNative("IsVehicleOccupied","i",e),Ng=e=>samp.callNative("GetVehicleRespawnTick","i",e),Dg=(e,t)=>samp.callNative("SetVehicleRespawnTick","ii",e,t),Tg=e=>!!samp.callNative("IsVehicleDead","i",e),vg=(e,t)=>!!samp.callNative("SetVehicleDead","ii",e,t),bg=(e,t)=>!!samp.callNative("SetVehicleBeenOccupied","ii",e,t),Lg=(e,t)=>!!samp.callNative("ToggleVehicleSirenEnabled","ii",e,t),wg=(e,t)=>!!samp.callNative("SetVehicleParamsSirenState","ii",e,+t),Rg=e=>!!samp.callNative("IsVehicleSirenEnabled","i",e),Og=e=>samp.callNative("GetVehicleModelCount","i",e),Ii=e=>samp.callNative("GetVehicleLastDriver","i",e),Ci=e=>samp.callNative("GetVehicleDriver","i",e),Gg=()=>samp.callNative("GetVehicleModelsUsed",""),jg=e=>!!samp.callNative("GetVehicleSirenState","i",e),Fg=e=>samp.callNative("GetVehicleLandingGearState","i",e),Mg=e=>samp.callNativeFloat("GetVehicleHydraReactorAngle","i",e),Vg=e=>samp.callNativeFloat("GetVehicleTrainSpeed","i",e),kg=e=>{const[t=0,i=0,a=0,r=0,n=0,s=0,o=0,_=0,d=0,h]=samp.callNative("GetVehicleMatrix","iFFFFFFFFF",e);return{rightX:t,rightY:i,rightZ:a,upX:r,upY:n,upZ:s,atX:o,atY:_,atZ:d,ret:!!h}},Bg=e=>{const[t=0,i=0,a=0,r=0,n]=samp.callNative("GetRandomCarColPair","iIIII",e);return{color:[t,i,a,r],ret:!!n}},xg=(e,t=255)=>samp.callNative("CarColIndexToColour","ii",e,t),Hg=(e,t,i,a,r,n,s,o,_)=>samp.callNative("CreateVehicle","iffffiiii",e,t,i,a,r,N(n),N(s),o,_),Wg=e=>!!samp.callNative("DestroyVehicle","i",e),Ug=(e,t)=>!!samp.callNative("IsVehicleStreamedIn","ii",e,t),Kg=e=>{const[t,i,a,r]=samp.callNative("GetVehiclePos","iFFF",e);return{x:t,y:i,z:a,ret:!!r}},Xg=(e,t,i,a)=>!!samp.callNative("SetVehiclePos","ifff",e,t,i,a),Zg=e=>{const[t,i]=samp.callNative("GetVehicleZAngle","iF",e);return{angle:t,ret:!!i}},Yg=e=>{const[t,i,a,r]=samp.callNative("GetVehicleRotation","iFFF",e);return{x:t,y:i,z:a,ret:r}},zg=e=>{const[t,i,a,r,n]=samp.callNative("GetVehicleRotationQuat","iFFFF",e);return{w:t,x:i,y:a,z:r,ret:!!n}},Jg=(e,t,i,a)=>samp.callNativeFloat("GetVehicleDistanceFromPoint","ifff",e,t,i,a),$g=(e,t)=>!!samp.callNative("SetVehicleZAngle","if",e,t),Qg=(e,t,i=G.UNSET,a=G.UNSET)=>!!samp.callNative("SetVehicleParamsForPlayer","iiii",e,t,i,a),qg=()=>{samp.callNative("ManualVehicleEngineAndLights","")},eu=(e,t,i,a,r,n,s,o)=>!!samp.callNative("SetVehicleParamsEx","iiiiiiii",e,t,i,a,r,n,s,o),tu=e=>samp.callNative("GetVehicleParamsEx","iIIIIIII",e),iu=e=>samp.callNative("GetVehicleParamsSirenState","i",e),au=(e,t=G.UNSET,i=G.UNSET,a=G.UNSET,r=G.UNSET)=>!!samp.callNative("SetVehicleParamsCarDoors","iiiii",e,+t,+i,+a,+r),ru=e=>{const[t,i,a,r,n]=samp.callNative("GetVehicleParamsCarDoors","iIIII",e);return{driver:t,passenger:i,backLeft:a,backRight:r,ret:!!n}},nu=(e,t=G.UNSET,i=G.UNSET,a=G.UNSET,r=G.UNSET)=>!!samp.callNative("SetVehicleParamsCarWindows","iiiii",e,t,i,a,r),su=e=>{const[t,i,a,r,n]=samp.callNative("GetVehicleParamsCarWindows","iIIII",e);return{driver:t,passenger:i,backLeft:a,backRight:r,ret:!!n}},lu=e=>!!samp.callNative("SetVehicleToRespawn","i",e),ou=(e,t)=>!!samp.callNative("LinkVehicleToInterior","ii",e,t),_u=(e,t)=>!!samp.callNative("AddVehicleComponent","ii",e,t),cu=(e,t)=>!!samp.callNative("RemoveVehicleComponent","ii",e,t),du=(e,t,i)=>!!samp.callNative("ChangeVehicleColor","iii",e,N(t),N(i)),hu=(e,t)=>!!samp.callNative("ChangeVehiclePaintjob","ii",e,t),gu=(e,t)=>!!samp.callNative("SetVehicleHealth","if",e,t),uu=e=>{const[t,i]=samp.callNative("GetVehicleHealth","iF",e);return{health:t,ret:!!i}},mu=(e,t)=>!!samp.callNative("AttachTrailerToVehicle","ii",e,t),fu=e=>!!samp.callNative("DetachTrailerFromVehicle","i",e),Pu=e=>!!samp.callNative("IsTrailerAttachedToVehicle","i",e),pu=e=>samp.callNative("GetVehicleTrailer","i",e),Iu=(e,t)=>!!samp.callNative("SetVehicleNumberPlate","is",e,t),Cu=e=>samp.callNative("GetVehicleModel","i",e),yu=(e,t)=>samp.callNative("GetVehicleComponentInSlot","ii",e,t),Su=e=>samp.callNative("GetVehicleComponentType","i",e),Eu=e=>!!samp.callNative("RepairVehicle","i",e),Au=e=>{const[t,i,a,r]=samp.callNative("GetVehicleVelocity","iFFF",e);return{x:t,y:i,z:a,ret:!!r}},Nu=(e,t,i,a)=>!!samp.callNative("SetVehicleVelocity","ifff",e,t,i,a),Du=(e,t,i,a)=>!!samp.callNative("SetVehicleAngularVelocity","ifff",e,t,i,a),Tu=e=>{const[t,i,a,r,n]=samp.callNative("GetVehicleDamageStatus","iIIII",e);return{panels:t,doors:i,lights:a,tires:r,ret:!!n}},vu=(e,t,i,a,r)=>!!samp.callNative("UpdateVehicleDamageStatus","iiiii",e,t,i,a,r),bu=(e,t)=>{const[i,a,r,n]=samp.callNative("GetVehicleModelInfo","iiFFF",e,t);return{x:i,y:a,z:r,ret:!!n}},Lu=(e,t)=>!!samp.callNative("SetVehicleVirtualWorld","ii",e,t),wu=e=>samp.callNative("GetVehicleVirtualWorld","i",e),Ru=e=>!!samp.callNative("IsValidVehicle","i",e),Ou=(e,t,i,a,r,n,s)=>samp.callNative("AddStaticVehicle","iffffii",e,t,i,a,r,N(n),N(s)),Gu=(e,t,i,a,r,n,s,o,_)=>samp.callNative("AddStaticVehicleEx","iffffiiii",e,t,i,a,r,N(n),N(s),o,_),ju=e=>!!samp.callNative("ShowVehicle","i",e),Fu=e=>!!samp.callNative("HideVehicle","i",e),Mu=e=>!!samp.callNative("IsVehicleHidden","i",e),Vu=e=>!!samp.callNative("IsPlayerInModShop","i",e),ku=e=>!!samp.callNative("GetPlayerSirenState","i",e),Bu=e=>samp.callNative("GetPlayerLandingGearState","i",e),xu=e=>samp.callNative("GetPlayerHydraReactorAngle","i",e),Hu=e=>samp.callNativeFloat("GetPlayerTrainSpeed","i",e),Wu=(e,t)=>samp.callNative("GetVehicleOccupant","ii",e,t),Uu=e=>samp.callNative("GetVehicleMaxPassengers","i",e),Ku=e=>samp.callNative("CountVehicleOccupants","i",e),Xu=(e,t)=>!!samp.callNative("VehicleCanHaveComponent","ii",e,t),Zu=e=>samp.callNative("GetVehicleSeats","i",e),Yu=(e,t,i,a,r)=>!!samp.callNative("SetPlayerCheckpoint","iffff",e,t,i,a,r),zu=e=>!!samp.callNative("DisablePlayerCheckpoint","i",e),Ju=(e,t,i,a,r,n,s,o,_)=>!!samp.callNative("SetPlayerRaceCheckpoint","iifffffff",e,t,i,a,r,n,s,o,_),$u=e=>!!samp.callNative("DisablePlayerRaceCheckpoint","i",e),Qu=e=>!!samp.callNative("IsPlayerInCheckpoint","i",e),qu=e=>!!samp.callNative("IsPlayerInRaceCheckpoint","i",e),yi=e=>!!samp.callNative("IsPlayerCheckpointActive","i",e),Si=e=>{const[t=0,i=0,a=0,r=0,n]=samp.callNative("GetPlayerCheckpoint","iFFFF",e);return{fX:t,fY:i,fZ:a,fSize:r,ret:!!n}},Ei=e=>!!samp.callNative("IsPlayerRaceCheckpointActive","i",e),Ai=e=>{const[t=0,i=0,a=0,r=0,n=0,s=0,o=0,_]=samp.callNative("GetPlayerRaceCheckpoint","iFFFFFFF",e);return{fX:t,fY:i,fZ:a,fNextX:r,fNextY:n,fNextZ:s,fSize:o,ret:!!_}},em=e=>!!samp.callNative("IsMenuDisabled","i",e),tm=(e,t)=>!!samp.callNative("IsMenuRowDisabled","ii",e,t),im=(e,t)=>samp.callNative("GetMenuItems","ii",e,t),am=e=>{const[t=0,i=0,a]=samp.callNative("GetMenuPos","iFF",e);return{fX:t,fY:i,ret:!!a}},rm=e=>{const[t=0,i=0,a]=samp.callNative("GetMenuColumnWidth","iFF",e);return{fColumn1:t,fColumn2:i,ret:!!a}},nm=e=>!!samp.callNative("DestroyMenu","i",e),sm=(e,t)=>!!samp.callNative("ShowMenuForPlayer","ii",e,t),lm=(e,t)=>!!samp.callNative("HideMenuForPlayer","ii",e,t),om=e=>!!samp.callNative("IsValidMenu","i",e),_m=e=>!!samp.callNative("DisableMenu","i",e),cm=(e,t)=>!!samp.callNative("DisableMenuRow","ii",e,t),Ni=e=>samp.callNative("GetPlayerMenu","i",e),dm=e=>!!samp.callNative("IsValid3DTextLabel","i",e),hm=(e,t)=>!!samp.callNative("Is3DTextLabelStreamedIn","ii",e,t),gm=e=>samp.callNative("Get3DTextLabelColor","i",e),um=e=>{const[t=0,i=0,a=0,r]=samp.callNative("Get3DTextLabelPos","iFFF",e);return{fX:t,fY:i,fZ:a,ret:!!r}},mm=(e,t)=>!!samp.callNative("Set3DTextLabelDrawDistance","ii",e,t),fm=e=>samp.callNativeFloat("Get3DTextLabelDrawDistance","i",e),Pm=e=>!!samp.callNative("Get3DTextLabelLOS","i",e),pm=(e,t)=>!!samp.callNative("Set3DTextLabelLOS","ii",e,t),Im=(e,t)=>!!samp.callNative("Set3DTextLabelVirtualWorld","ii",e,t),Cm=e=>samp.callNative("Get3DTextLabelVirtualWorld","i",e),ym=e=>{const[t=0,i=0,a]=samp.callNative("Get3DTextLabelAttachedData","i",e);return{attachedPlayerId:t,attachedVehicleId:i,ret:!!a}},Sm=e=>!!samp.callNative("Delete3DTextLabel","i",e),Em=(e,t,i,a,r)=>!!samp.callNative("Attach3DTextLabelToPlayer","iifff",e,t,i,a,r),Am=(e,t,i,a,r)=>!!samp.callNative("Attach3DTextLabelToVehicle","iifff",e,t,i,a,r),Nm=(e,t)=>!!samp.callNative("IsValidPlayer3DTextLabel","ii",e,t),Dm=(e,t)=>samp.callNative("GetPlayer3DTextLabelColor","ii",e,t),Tm=(e,t)=>{const[i=0,a=0,r=0,n]=samp.callNative("GetPlayer3DTextLabelPos","iiFFF",e,t);return{fX:i,fY:a,fZ:r,ret:!!n}},vm=(e,t,i)=>!!samp.callNative("SetPlayer3DTextLabelDrawDistance","iii",e,t,i),bm=(e,t)=>samp.callNativeFloat("GetPlayer3DTextLabelDrawDistance","ii",e,t),Lm=(e,t)=>!!samp.callNative("GetPlayer3DTextLabelLOS","ii",e,t),wm=(e,t,i)=>!!samp.callNative("SetPlayer3DTextLabelLOS","iii",e,t,i),Rm=(e,t)=>samp.callNative("GetPlayer3DTextLabelVirtualWorld","ii",e,t),Om=(e,t,i)=>!!samp.callNative("SetPlayer3DTextLabelVirtualWorld","iii",e,t,i),Gm=(e,t)=>{const[i=0,a=0,r]=samp.callNative("GetPlayer3DTextLabelAttachedData","ii",e,t);return{attachedPlayerId:i,attachedVehicleId:a,ret:!!r}},jm=(e,t)=>!!samp.callNative("DeletePlayer3DTextLabel","ii",e,t),Fm=e=>!!samp.callNative("IsValidGangZone","i",e),Mm=(e,t)=>!!samp.callNative("IsPlayerInGangZone","ii",e,t),Vm=(e,t)=>!!samp.callNative("IsGangZoneVisibleForPlayer","ii",e,t),km=(e,t)=>samp.callNative("GangZoneGetColorForPlayer","ii",e,t),Bm=(e,t)=>samp.callNative("GangZoneGetFlashColorForPlayer","ii",e,t),xm=(e,t)=>!!samp.callNative("IsGangZoneFlashingForPlayer","ii",e,t),Hm=e=>{const[t=0,i=0,a=0,r=0,n]=samp.callNative("GangZoneGetPos","iFFFF",e);return{fMinX:t,fMinY:i,fMaxX:a,fMaxY:r,ret:!!n}},Wm=(e,t)=>!!samp.callNative("UseGangZoneCheck","ii",e,t),Um=(e,t,i,a)=>samp.callNative("GangZoneCreate","ffff",e,t,i,a),Km=e=>!!samp.callNative("GangZoneDestroy","i",e),Xm=(e,t,i)=>!!samp.callNative("GangZoneShowForPlayer","iii",e,t,N(i)),Zm=(e,t)=>!!samp.callNative("GangZoneShowForAll","ii",e,N(t)),Ym=(e,t)=>!!samp.callNative("GangZoneHideForPlayer","ii",e,t),zm=e=>!!samp.callNative("GangZoneHideForAll","i",e),Jm=(e,t,i)=>!!samp.callNative("GangZoneFlashForPlayer","iii",e,t,N(i)),$m=(e,t)=>!!samp.callNative("GangZoneFlashForAll","ii",e,N(t)),Qm=(e,t)=>!!samp.callNative("GangZoneStopFlashForPlayer","ii",e,t),qm=e=>!!samp.callNative("GangZoneStopFlashForAll","i",e),ef=(e,t,i,a,r)=>samp.callNative("CreatePlayerGangZone","iffff",e,t,i,a,r),tf=(e,t)=>!!samp.callNative("PlayerGangZoneDestroy","ii",e,t),af=(e,t,i)=>!!samp.callNative("PlayerGangZoneShow","iii",e,t,i),rf=(e,t)=>!!samp.callNative("PlayerGangZoneHide","ii",e,t),nf=(e,t,i)=>!!samp.callNative("PlayerGangZoneFlash","iii",e,t,i),sf=(e,t)=>!!samp.callNative("PlayerGangZoneStopFlash","ii",e,t),lf=(e,t)=>!!samp.callNative("IsValidPlayerGangZone","ii",e,t),of=(e,t)=>!!samp.callNative("IsPlayerInPlayerGangZone","ii",e,t),_f=(e,t)=>!!samp.callNative("IsPlayerGangZoneVisible","ii",e,t),cf=(e,t)=>samp.callNative("PlayerGangZoneGetColor","ii",e,t),df=(e,t)=>samp.callNative("PlayerGangZoneGetFlashColor","ii",e,t),hf=(e,t)=>!!samp.callNative("IsPlayerGangZoneFlashing","ii",e,t),gf=(e,t)=>{const[i=0,a=0,r=0,n=0,s]=samp.callNative("PlayerGangZoneGetPos","iiFFFF",e,t);return{fMinX:i,fMinY:a,fMaxX:r,fMaxY:n,ret:!!s}},uf=(e,t,i)=>!!samp.callNative("UsePlayerGangZoneCheck","iii",e,t,i),mf=e=>!!samp.callNative("IsValidTextDraw","i",e),ff=(e,t)=>!!samp.callNative("IsTextDrawVisibleForPlayer","ii",e,t),Pf=e=>{const[t,i]=samp.callNative("TextDrawGetString","iSi",e,1024);return{str:t,ret:!!i}},pf=(e,t,i)=>{samp.callNative("TextDrawSetPos","iff",e,t,i)},If=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetLetterSize","iFF",e);return{fX:t,fY:i,ret:!!a}},Cf=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetTextSize","iFF",e);return{fX:t,fY:i,ret:!!a}},yf=e=>{const[t=0,i=0,a]=samp.callNative("TextDrawGetPos","iFF",e);return{fX:t,fY:i,ret:!!a}},Sf=e=>samp.callNative("TextDrawGetColor","i",e),Ef=e=>samp.callNative("TextDrawGetBoxColor","i",e),Af=e=>samp.callNative("TextDrawGetBackgroundColor","i",e),Nf=e=>samp.callNative("TextDrawGetShadow","i",e),Df=e=>samp.callNative("TextDrawGetOutline","i",e),Tf=e=>samp.callNative("TextDrawGetFont","i",e),vf=e=>!!samp.callNative("TextDrawIsBox","i",e),bf=e=>!!samp.callNative("TextDrawIsProportional","i",e),Lf=e=>!!samp.callNative("TextDrawIsSelectable","i",e),wf=e=>samp.callNative("TextDrawGetAlignment","i",e),Rf=e=>samp.callNative("TextDrawGetPreviewModel","i",e),Of=e=>{const[t=0,i=0,a=0,r=0,n]=samp.callNative("TextDrawGetPreviewRot","iFFFF",e);return{fRotX:t,fRotY:i,fRotZ:a,fZoom:r,ret:!!n}},Gf=e=>{const[t,i,a]=samp.callNative("TextDrawGetPreviewVehCol","iII",e);return{color1:t,color2:i,ret:!!a}},jf=(e,t,i)=>!!samp.callNative("TextDrawSetStringForPlayer","iia",e,t,i),Ff=(e,t,i)=>samp.callNative("TextDrawCreate","ffa",e,t,i),Mf=e=>!!samp.callNative("TextDrawDestroy","i",e),Vf=(e,t,i)=>!!samp.callNative("TextDrawLetterSize","iff",e,t,i),kf=(e,t,i)=>!!samp.callNative("TextDrawTextSize","iff",e,t,i),Bf=(e,t)=>!!samp.callNative("TextDrawAlignment","ii",e,t),xf=(e,t)=>!!samp.callNative("TextDrawColor","ii",e,N(t)),Hf=(e,t)=>!!samp.callNative("TextDrawUseBox","ii",e,t),Wf=(e,t)=>!!samp.callNative("TextDrawBoxColor","ii",e,N(t)),Uf=(e,t)=>!!samp.callNative("TextDrawSetShadow","ii",e,t),Kf=(e,t)=>!!samp.callNative("TextDrawSetOutline","ii",e,t),Xf=(e,t)=>!!samp.callNative("TextDrawBackgroundColor","ii",e,N(t)),Zf=(e,t)=>!!samp.callNative("TextDrawFont","ii",e,t),Yf=(e,t)=>!!samp.callNative("TextDrawSetProportional","ii",e,t),zf=(e,t)=>!!samp.callNative("TextDrawSetSelectable","ii",e,t),Jf=(e,t)=>!!samp.callNative("TextDrawShowForPlayer","ii",e,t),$f=(e,t)=>!!samp.callNative("TextDrawHideForPlayer","ii",e,t),Qf=e=>!!samp.callNative("TextDrawShowForAll","i",e),qf=e=>!!samp.callNative("TextDrawHideForAll","i",e),eP=(e,t)=>!!samp.callNative("TextDrawSetString","ia",e,t),tP=(e,t)=>!!samp.callNative("TextDrawSetPreviewModel","ii",e,t),iP=(e,t,i,a,r=1)=>!!samp.callNative("TextDrawSetPreviewRot","iffff",e,t,i,a,r),aP=(e,t,i)=>!!samp.callNative("TextDrawSetPreviewVehCol","iii",e,N(t),N(i)),rP=(e,t)=>!!samp.callNative("SelectTextDraw","ii",e,N(t)),nP=e=>!!samp.callNative("CancelSelectTextDraw","i",e),sP=(e,t)=>!!samp.callNative("IsValidPlayerTextDraw","ii",e,t),lP=(e,t)=>!!samp.callNative("IsPlayerTextDrawVisible","ii",e,t),oP=(e,t)=>{const[i,a]=samp.callNative("PlayerTextDrawGetString","iiSi",e,t,1024);return{str:i,ret:!!a}},_P=(e,t,i,a)=>!!samp.callNative("PlayerTextDrawSetPos","iiff",e,t,i,a),cP=(e,t)=>{const[i=0,a=0,r]=samp.callNative("PlayerTextDrawGetLetterSize","iiFF",e,t);return{fX:i,fY:a,ret:!!r}},dP=(e,t)=>{const[i=0,a=0,r]=samp.callNative("PlayerTextDrawGetTextSize","iiFF",e,t);return{fX:i,fY:a,ret:!!r}},hP=(e,t)=>{const[i=0,a=0,r]=samp.callNative("PlayerTextDrawGetPos","iiFF",e,t);return{fX:i,fY:a,ret:!!r}},gP=(e,t)=>samp.callNative("PlayerTextDrawGetColor","ii",e,t),uP=(e,t)=>samp.callNative("PlayerTextDrawGetBoxColor","ii",e,t),mP=(e,t)=>samp.callNative("PlayerTextDrawGetBackgroundColor","ii",e,t),fP=(e,t)=>samp.callNative("PlayerTextDrawGetShadow","ii",e,t),PP=(e,t)=>samp.callNative("PlayerTextDrawGetOutline","ii",e,t),pP=(e,t)=>samp.callNative("PlayerTextDrawGetFont","ii",e,t),IP=(e,t)=>!!samp.callNative("PlayerTextDrawIsBox","ii",e,t),CP=(e,t)=>!!samp.callNative("PlayerTextDrawIsProportional","ii",e,t),yP=(e,t)=>!!samp.callNative("PlayerTextDrawIsSelectable","ii",e,t),SP=(e,t)=>samp.callNative("PlayerTextDrawGetAlignment","ii",e,t),EP=(e,t)=>samp.callNative("PlayerTextDrawGetPreviewModel","ii",e,t),AP=(e,t)=>{const[i=0,a=0,r=0,n=0,s]=samp.callNative("PlayerTextDrawGetPreviewRot","iiFFFF",e,t);return{fRotX:i,fRotY:a,fRotZ:r,fZoom:n,ret:!!s}},NP=(e,t)=>{const[i,a,r]=samp.callNative("PlayerTextDrawGetPreviewVehCol","iiII",e,t);return{color1:i,color2:a,ret:!!r}},DP=(e,t,i,a)=>samp.callNative("CreatePlayerTextDraw","iffa",e,t,i,a),TP=(e,t)=>!!samp.callNative("PlayerTextDrawDestroy","ii",e,t),vP=(e,t,i,a)=>!!samp.callNative("PlayerTextDrawLetterSize","iiff",e,t,i,a),bP=(e,t,i,a)=>!!samp.callNative("PlayerTextDrawTextSize","iiff",e,t,i,a),LP=(e,t,i)=>!!samp.callNative("PlayerTextDrawAlignment","iii",e,t,i),wP=(e,t,i)=>!!samp.callNative("PlayerTextDrawColor","iii",e,t,N(i)),RP=(e,t,i)=>!!samp.callNative("PlayerTextDrawUseBox","iii",e,t,i),OP=(e,t,i)=>!!samp.callNative("PlayerTextDrawBoxColor","iii",e,t,N(i)),GP=(e,t,i)=>!!samp.callNative("PlayerTextDrawSetShadow","iii",e,t,i),jP=(e,t,i)=>!!samp.callNative("PlayerTextDrawSetOutline","iii",e,t,i),FP=(e,t,i)=>!!samp.callNative("PlayerTextDrawBackgroundColor","iii",e,t,N(i)),MP=(e,t,i)=>!!samp.callNative("PlayerTextDrawFont","iii",e,t,i),VP=(e,t,i)=>!!samp.callNative("PlayerTextDrawSetProportional","iii",e,t,i),kP=(e,t,i)=>!!samp.callNative("PlayerTextDrawSetSelectable","iii",e,t,i),BP=(e,t)=>!!samp.callNative("PlayerTextDrawShow","ii",e,t),xP=(e,t)=>!!samp.callNative("PlayerTextDrawHide","ii",e,t),HP=(e,t,i)=>!!samp.callNative("PlayerTextDrawSetString","iia",e,t,i),WP=(e,t,i)=>!!samp.callNative("PlayerTextDrawSetPreviewModel","iii",e,t,i),UP=(e,t,i,a,r,n)=>!!samp.callNative("PlayerTextDrawSetPreviewRot","iiffff",e,t,i,a,r,n),KP=(e,t,i,a)=>!!samp.callNative("PlayerTextDrawSetPreviewVehCol","iiii",e,t,i,a),XP=e=>samp.callNativeFloat("GetObjectDrawDistance","i",e),ZP=e=>samp.callNativeFloat("GetObjectMoveSpeed","i",e),YP=(e,t)=>!!samp.callNativeFloat("SetObjectMoveSpeed","if",e,t),zP=e=>{const[t=0,i=0,a=0,r]=samp.callNative("GetObjectMovingTargetPos","iFFF",e);return{fX:t,fY:i,fZ:a,ret:!!r}},JP=e=>{const[t=0,i=0,a=0,r]=samp.callNative("GetObjectTarget","iFFF",e);return{fX:t,fY:i,fZ:a,ret:!!r}},$P=e=>{const[t=0,i=0,a=0,r=0,n=0,s=0,o]=samp.callNative("GetObjectAttachedOffset","i",e);return{fX:t,fY:i,fZ:a,fRotX:r,fRotY:n,fRotZ:s,ret:!!o}},QP=e=>!!samp.callNative("GetObjectSyncRotation","i",e),qP=(e,t)=>!!samp.callNative("IsObjectMaterialSlotUsed","ii",e,t),ep=(e,t)=>{const[i=0,a,r,n=0,s]=samp.callNative("GetObjectMaterial","iiISiSiI",e,t,64,64);return{modelId:i,txdName:a,textureName:r,materialColor:n,ret:!!s}},tp=(e,t,i,a,r,n,s,o=0)=>samp.callNative("CreateObject","ifffffff",e,t,i,a,r,n,s,o),ip=(e,t,i,a,r,n,s,o)=>!!samp.callNative("AttachObjectToVehicle","iiffffff",e,t,i,a,r,n,s,o),ap=(e,t,i,a,r,n,s,o,_,d=!0)=>!!samp.callNative("AttachPlayerObjectToObject","iiiffffffi",e,t,i,a,r,n,s,o,_,d),rp=(e,t,i,a,r,n,s,o,_=!0)=>!!samp.callNative("AttachObjectToObject","iiffffffi",e,t,i,a,r,n,s,o,_),np=(e,t,i,a,r,n,s,o)=>!!samp.callNative("AttachObjectToPlayer","iiffffff",e,t,i,a,r,n,s,o),sp=(e,t)=>!!samp.callNative("EditAttachedObject","ii",e,t),lp=(e,t,i,a)=>!!samp.callNative("SetObjectPos","ifff",e,t,i,a),op=e=>{const[t,i,a,r]=samp.callNative("GetObjectPos","iFFF",e);return{x:t,y:i,z:a,ret:!!r}},_p=(e,t,i,a)=>!!samp.callNative("SetObjectRot","ifff",e,t,i,a),cp=e=>{const[t,i,a,r]=samp.callNative("GetObjectRot","iFFF",e);return{x:t,y:i,z:a,ret:!!r}},dp=e=>samp.callNative("GetObjectModel","i",e),hp=e=>!!samp.callNative("SetObjectNoCameraCol","i",e),gp=e=>!!samp.callNative("IsObjectNoCameraCol","i",e),up=e=>!!samp.callNative("IsValidObject","i",e),mp=e=>!!samp.callNative("DestroyObject","i",e),fp=(e,t,i,a,r,n,s,o)=>!!samp.callNative("MoveObject","ifffffff",e,t,i,a,r,n,s,o),Pp=e=>!!samp.callNative("StopObject","i",e),pp=e=>!!samp.callNative("IsObjectMoving","i",e),Ip=(e,t)=>!!samp.callNative("BeginObjectEditing","ii",e,t),Cp=e=>!!samp.callNative("BeginObjectSelecting","i",e),Di=e=>!!samp.callNative("EndObjectEditing","i",e),yp=(e,t,i,a,r,n)=>!!samp.callNative("SetObjectMaterial","iiissi",e,t,i,a,r,N(n)),Sp=e=>!!samp.callNative("SetObjectsDefaultCameraCol","i",e),Ep=(e,t,i,a)=>!!samp.callNative("AddCharModel","iiss",e,t,i,a),Ap=(e,t,i,a,r)=>!!samp.callNative("AddSimpleModel","iiiss",e,t,i,a,r),Np=(e,t,i,a,r,n,s)=>!!samp.callNative("AddSimpleModelTimed","iiissii",e,t,i,a,r,n,s),Dp=(e,t)=>!!samp.callNative("RedirectDownload","is",e,t),Tp=e=>{const[t,i,a]=samp.callNative("GetCustomModelPath","iSiSi",e,255,255);return{dffPath:t,txdPath:i,ret:!!a}},vp=e=>{const[t,i]=samp.callNative("FindModelFileNameFromCRC","iSi",e,255);return{name:t,ret:i}},bp=e=>{const[t,i]=samp.callNative("FindTextureFileNameFromCRC","iSi",e,255);return{name:t,ret:i}},Lp=(e,t)=>{const[i=0,a=0,r=0,n=0,s=0,o=0,_=0,d=0,h=0,u=0,I=0,S=0,y=0,L]=samp.callNative("GetPlayerAttachedObject","iiIIFFFFFFFFFII",e,t);return{modelId:i,bone:a,fX:r,fY:n,fZ:s,fRotX:o,fRotY:_,fRotZ:d,fScaleX:h,fScaleY:u,fScaleZ:I,materialColor1:S,materialColor2:y,ret:!!L}},wp=(e,t,i,a,r,n,s,o,_,d,h,u,I,S,y)=>!!samp.callNative("SetPlayerAttachedObject","iiiifffffffffii",e,t,i,a,r,n,s,o,_,d,h,u,I,N(S),N(y)),Rp=(e,t)=>!!samp.callNative("RemovePlayerAttachedObject","ii",e,t),Op=(e,t)=>!!samp.callNative("IsPlayerAttachedObjectSlotUsed","ii",e,t),Ti=e=>!!samp.callNative("IsValidCustomModel","i",e),Gp=e=>{if(!Ti(e))return null;const[t,i,a]=samp.callNative("GetCustomModePath","iSiSi",e,255,255);return{dffPath:t,txdPath:i,ret:a}},jp=(e,t)=>samp.callNativeFloat("GetPlayerObjectDrawDistance","ii",e,t),Fp=(e,t,i)=>!!samp.callNativeFloat("SetPlayerObjectMoveSpeed","iif",e,t,i),Mp=(e,t)=>samp.callNativeFloat("GetPlayerObjectMoveSpeed","ii",e,t),Vp=(e,t)=>{const[i=0,a=0,r=0,n]=samp.callNative("GetPlayerObjectTarget","iiFFF",e,t);return{fX:i,fY:a,fZ:r,ret:!!n}},kp=(e,t)=>{const[i=0,a=0,r=0,n]=samp.callNative("GetPlayerObjectMovingTargetPos","iiFFF",e,t);return{fX:i,fY:a,fZ:r,ret:!!n}},Bp=(e,t)=>{const[i=0,a=0,r=0,n=0,s=0,o=0,_]=samp.callNative("GetPlayerObjectAttachedOffset","iiFFFFFF",e,t);return{fX:i,fY:a,fZ:r,fRotX:n,fRotY:s,fRotZ:o,ret:!!_}},xp=(e,t)=>!!samp.callNative("GetPlayerObjectSyncRotation","ii",e,t),Hp=(e,t,i)=>!!samp.callNative("IsPlayerObjectMaterialSlotUsed","iii",e,t,i),Wp=(e,t,i)=>{const[a=0,r,n,s=0,o]=samp.callNative("GetPlayerObjectMaterial","iiiISiSiI",e,t,i,64,64);return{modelId:a,txdName:r,textureName:n,materialColor:s,ret:!!o}},Up=(e,t)=>!!samp.callNative("IsPlayerObjectNoCameraCol","ii",e,t),Kp=e=>samp.callNative("GetPlayerCameraTargetPlayerObj","i",e),Xp=(e,t)=>!!samp.callNative("BeginPlayerObjectEditing","ii",e,t),Zp=(e,t,i,a,r,n,s,o,_=0)=>samp.callNative("CreatePlayerObject","iifffffff",e,t,i,a,r,n,s,o,_),Yp=(e,t,i,a,r,n,s,o,_)=>!!samp.callNative("AttachPlayerObjectToVehicle","iiiffffff",e,t,i,a,r,n,s,o,_),zp=(e,t,i,a,r)=>samp.callNative("SetPlayerObjectPos","iifff",e,t,i,a,r),Jp=(e,t)=>{const[i,a,r,n]=samp.callNative("GetPlayerObjectPos","iiFFF",e,t);return{x:i,y:a,z:r,ret:!!n}},$p=(e,t,i,a,r)=>samp.callNative("SetPlayerObjectRot","iifff",e,t,i,a,r),Qp=(e,t)=>{const[i,a,r,n]=samp.callNative("GetPlayerObjectRot","iiFFF",e,t);return{x:i,y:a,z:r,ret:!!n}},qp=(e,t)=>samp.callNative("GetPlayerObjectModel","ii",e,t),eI=(e,t)=>!!samp.callNative("SetPlayerObjectNoCameraCollision","ii",e,t),tI=(e,t)=>!!samp.callNative("IsValidPlayerObject","ii",e,t),iI=(e,t)=>!!samp.callNative("DestroyPlayerObject","ii",e,t),aI=(e,t,i,a,r,n,s,o,_)=>!!samp.callNative("MovePlayerObject","iifffffff",e,t,i,a,r,n,s,o,_),rI=(e,t)=>!!samp.callNative("StopPlayerObject","ii",e,t),nI=(e,t)=>!!samp.callNative("IsPlayerObjectMoving","ii",e,t),sI=(e,t,i,a,r,n,s,o,_)=>!!samp.callNative("AttachPlayerObjectToPlayer","iiiffffff",e,t,i,a,r,n,s,o,_),lI=(e,t,i,a,r,n,s)=>!!samp.callNative("SetPlayerObjectMaterial","iiiissi",e,t,i,a,r,n,N(s)),oI=e=>!!samp.callNative("IsValidPickup","i",e),_I=(e,t)=>!!samp.callNative("IsPickupStreamedIn","ii",e,t),cI=e=>{const[t,i,a,r]=samp.callNative("GetPickupPos","iFFF",e);return{fX:t,fY:i,fZ:a,ret:!!r}},dI=e=>samp.callNative("GetPickupModel","i",e),hI=e=>samp.callNative("GetPickupType","i",e),gI=e=>samp.callNative("GetPickupVirtualWorld","i",e),uI=(e,t,i,a,r=!0)=>!!samp.callNative("SetPickupPos","ifffi",e,t,i,a,r),mI=(e,t,i=!0)=>!!samp.callNative("SetPickupModel","iii",e,t,i),fI=(e,t,i=!0)=>!!samp.callNative("SetPickupType","iii",e,t,i),PI=(e,t)=>!!samp.callNative("SetPickupVirtualWorld","ii",e,t),pI=(e,t)=>!!samp.callNative("ShowPickupForPlayer","ii",e,t),II=(e,t)=>!!samp.callNative("HidePickupForPlayer","ii",e,t),CI=(e,t)=>!!samp.callNative("IsPickupHiddenForPlayer","ii",e,t),yI=(e,t,i,a,r,n)=>samp.callNative("AddStaticPickup","iifffi",e,t,i,a,r,n),SI=(e,t,i,a,r,n)=>samp.callNative("CreatePickup","iifffi",e,t,i,a,r,n),EI=e=>!!samp.callNative("DestroyPickup","i",e);function AI(e,t,i,a,r,n,s=0){return samp.callNative("CreatePlayerPickup","iiifffi",e,t,i,a,r,n,s)}function NI(e,t){return!!samp.callNative("DestroyPlayerPickup","ii",e,t)}function DI(e,t){return!!samp.callNative("IsValidPlayerPickup","ii",e,t)}function TI(e,t){return!!samp.callNative("IsPlayerPickupStreamedIn","ii",e,t)}function vI(e,t){const[i,a,r,n]=samp.callNative("GetPlayerPickupPos","iiFFF",e,t);return{x:i,y:a,z:r,ret:!!n}}function bI(e,t,i,a,r,n=!0){return!!samp.callNative("SetPlayerPickupPos","iifffi",e,t,i,a,r,n)}function LI(e,t,i,a=!0){return!!samp.callNative("SetPlayerPickupModel","iiii",e,t,i,a)}function wI(e,t,i,a=!0){return!!samp.callNative("SetPlayerPickupType","iiii",e,t,i,a)}function RI(e,t,i){return!!samp.callNative("SetPlayerPickupVirtualWorld","iii",e,t,i)}function OI(e,t){return samp.callNative("GetPlayerPickupModel","ii",e,t)}function GI(e,t){return samp.callNative("GetPlayerPickupType","ii",e,t)}function jI(e,t){return samp.callNative("GetPlayerPickupVirtualWorld","ii",e,t)}const vi=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}]]]),yt=e=>{const t=vi.get(e.toUpperCase());return typeof t>"u"?!1:t},St=(e,t)=>{const i=yt(e);if(i)return t==="null"?!0:i.some(a=>a.n===t)},FI=(e,t)=>{const i=yt(e);if(i)return i.find(a=>a.n===t)?.d},pe=(e,t)=>{const i=t.replace("-","")==="utf8"?e:E.encodeToBuf(e,t);return[i instanceof Array?"a":"s",i]},bi=(e,t,i)=>{const a=pe(i,e.charset);return!!samp.callNative("SendClientMessage",`ii${a[0]}`,e.id,N(t),a[1])},MI=(e,t,i)=>e.map(a=>bi(a,t,i)).every(a=>a===!0),Li=(e,t,i)=>{const a=pe(i,e.charset);return!!samp.callNative("SendPlayerMessageToPlayer",`ii${a[0]}`,e.id,t,a[1])},VI=(e,t,i)=>e.map(a=>Li(a,t,i)).every(a=>a===!0),kI=(e,t,i)=>{const{charset:a}=e,{style:r,caption:n,info:s,button1:o,button2:_}=i,[d,h]=pe(n||"",a),[,u]=pe(s||"",a),[,I]=pe(o||"",a),[,S]=pe(_||"",a);return!!samp.callNative("ShowPlayerDialog",`iii${d.repeat(4)}`,e.id,t,r,h,u,I,S)},BI=e=>{const[t,i]=samp.callNative("GetPlayerName","iAi",e.id,W.MAX_PLAYER_NAME);return{name:E.decodeFromBuf(E.getValidStr(t),e.charset),ret:i}},xI=(e,t)=>samp.callNative("SetPlayerName","ia",e.id,E.encodeToBuf(t,e.charset)),HI=(e,t,i)=>{const a=E.encodeToBuf(t,i);return!!samp.callNative("BanEx","ia",e,a)},WI=(e,t="utf8")=>{const[i,a]=pe(e,t);return!!samp.callNative("SendRconCommand",i,a)},UI=(e,t,i,a,r,n,s,o,_,d,h,u,I,S,y,L)=>{const M=E.encodeToBuf(t,e);return samp.callNative("CreateDynamic3DTextLabel","aiffffiiiiiifii",M,i,a,r,n,s,o,_,d,h,u,I,S,y,L)},KI=(e,t,i,a,r,n,s,o,_,d,h,u,I,S,y,L)=>{const M=E.encodeToBuf(e,L);return samp.callNative("CreateDynamic3DTextLabelEx","aiffffiiifaaaaiiiii",M,t,i,a,r,n,s,o,_,d,h,u,I,S,y,h.length,u.length,I.length,S.length)},XI=(e,t,i,a)=>{const r=E.encodeToBuf(i,a);return samp.callNative("UpdateDynamic3DTextLabelText","iia",e,t,r)},ZI=(e,t)=>{const[i,a]=samp.callNative("GetDynamic3DTextLabelText","iAi",e,1024);return{text:E.decodeFromBuf(E.getValidStr(i),t),ret:a}},YI=(e,t,i,a,r,n,s,o,_,d,h)=>{const u=E.encodeToBuf(a,e),I=E.encodeToBuf(n,e);return samp.callNative("SetDynamicObjectMaterialText","iiaiaiiiii",t,i,u,r,I,s,o,_,d,h)},zI=(e,t,i="utf8")=>{const[a,r,n,s,o]=samp.callNative("GetDynamicObjectMaterial","iiIAAIii",e,t,64,64);return{modelId:a,txdName:E.decodeFromBuf(E.getValidStr(r),i),textureName:E.decodeFromBuf(E.getValidStr(n),i),materialColor:s,ret:o}},JI=(e,t,i)=>{const[a,r,n,s,o,_,d,h,u]=samp.callNative("GetDynamicObjectMaterialText","iiAIAIIIIIii",e,t,2048,32),I=E.decodeFromBuf(a,i),S=E.decodeFromBuf(n,i);return{text:I,materialSize:r,fontFace:S,fontSize:s,bold:o,fontColor:_,backColor:d,textAlignment:h,ret:u}},$I=(e,t,i,a,r,n)=>{const s=E.encodeToBuf(t,n);return!!samp.callNative("SetPlayerChatBubble","iaifi",e,s,N(i),a,r)},wi=(e,t,i,a,r,n,s,o=!0,_,d,h)=>{const u=E.encodeToBuf(i,e),I=E.encodeToBuf(n,e);return!!samp.callNative("SetObjectMaterialText","iaiiaiiiii",t,u,a,r,I,s,o,N(_),N(d),h)},QI=(e,t,i)=>{const[a,r=0,n,s=0,o=0,_=0,d=0,h=0,u]=samp.callNative("GetObjectMaterialText","iiAiIAiIIIII",e,t,2048,32),I=E.decodeFromBuf(a,i),S=E.decodeFromBuf(n,i);return{text:I,materialSize:r,fontFace:S,fontSize:s,bold:o,fontColor:_,backColor:d,textAlignment:h,ret:!!u}},Ri=(e,t,i,a,r,n,s,o,_=!0,d,h,u)=>{const I=E.encodeToBuf(a,e),S=E.encodeToBuf(s,e);return!!samp.callNative("SetPlayerObjectMaterialText","iiaiiaiiiii",t,i,I,r,n,S,o,_,N(d),N(h),u)},qI=(e,t,i,a)=>{const[r,n=0,s,o=0,_=0,d=0,h=0,u=0,I]=samp.callNative("GetPlayerObjectMaterialText","iiiAiIAiIIIII",e,t,i,2048,32),S=E.decodeFromBuf(r,a),y=E.decodeFromBuf(s,a);return{text:S,materialSize:n,fontFace:y,fontSize:o,bold:_,fontColor:d,backColor:h,textAlignment:u,ret:!!I}},eC=(e,t,i,a,r,n,s,o,_=!1)=>{const d=E.encodeToBuf(t,e);return samp.callNative("Create3DTextLabel","aiffffii",d,N(i),a,r,n,s,o,_)},tC=(e,t,i,a,r,n,s,o,_,d,h)=>{const u=E.encodeToBuf(i,e);return samp.callNative("CreatePlayer3DTextLabel","iaiffffiii",t,u,N(a),r,n,s,o,_,d,h)},iC=(e,t,i,a)=>{const r=E.encodeToBuf(a,e);return!!samp.callNative("Update3DTextLabelText","iia",t,N(i),r)},aC=(e,t,i,a,r)=>{const n=E.encodeToBuf(r,e);return!!samp.callNative("UpdatePlayer3DTextLabelText","iiia",t,i,N(a),n)},rC=(e,t)=>{const[i,a]=samp.callNative("Get3DTextLabelText","iAi",t,144);return{text:E.decodeFromBuf(i,e),buf:i,ret:!!a}},nC=(e,t,i)=>{const[a,r]=samp.callNative("GetPlayer3DTextLabelText","iiAi",t,i,144);return{text:E.decodeFromBuf(a,e),buf:a,ret:!!r}},sC=(e,t,i)=>{const[a,r]=samp.callNative("GetMenuColumnHeader","iiAi",e,t,31);return{header:E.decodeFromBuf(a,i),buf:a,ret:!!r}},lC=(e,t,i,a)=>{const[r,n]=samp.callNative("GetMenuItem","iiiAi",e,t,i,31);return{item:E.decodeFromBuf(r,a),buf:r,ret:!!n}},oC=(e,t,i,a,r,n,s)=>samp.callNative("CreateMenu","aiffff",E.encodeToBuf(e,s),t,i,a,r,n),_C=(e,t,i,a)=>samp.callNative("AddMenuItem","iia",e,t,E.encodeToBuf(i,a)),cC=(e,t,i,a)=>!!samp.callNative("SetMenuColumnHeader","iia",e,t,E.encodeToBuf(i,a)),B=Symbol("internalPlayerProps"),ce=new Map,Ie=new Map,Me=new Map,Y=new Map,Ve=new Map,Ce=new Map,se=new Map,ye=new Map,ue=new Map,ke=new Map,z=new Map,Se=new Map,Be=new Map,me=new Map,Ee=new Map,Ae=new Map,Ne=new Map,xe=new Map,De=new Map,Te=new Map,K=new Map,He=new Map,We=new Map,J=new Map,Ue=new Map,$=new Map,[dC]=m({name:"OnGameModeInit",identifier:""}),[Oi,hC]=m({name:"OnGameModeInitReal",isNative:!1});dC(()=>{Promise.resolve().then(hC)});const[Gi]=m({name:"OnGameModeExit",identifier:""}),[gC]=m({name:"OnIncomingConnection",identifier:"isi",defaultValue:!1,beforeEach(e,t,i){return{playerId:e,ipAddress:t,port:i}}}),[uC]=m({name:"OnRconCommandI18n",identifier:"ai",defaultValue:!1,beforeEach(e){return{buffer:e,cmd:E.decodeFromBuf(e)}}}),[mC]=m({name:"OnRconLoginAttemptI18n",identifier:"aiaii",beforeEach(e,t,i){return{ip:E.decodeFromBuf(e),password:E.decodeFromBuf(t),success:!!i,ipBuffer:e,passwordBuffer:t}}}),ve=[],Ke=[],ht=new Map,Et=async e=>{try{return await new Promise((t,i)=>{const a=ve.findIndex(o=>o.name===e);if(a===-1)return;const r=ve[a];function n(o){o.length&&ht.set(e,o),ve.splice(a,1),Ke.push(r),setTimeout(t)}const s=r.load();s instanceof Promise?s.then(n).catch(i):n(s)})}catch(t){throw new Error(`[GameMode]: script ${e} load fail
2
- err:${t}`)}},At=async e=>{try{return await new Promise((t,i)=>{const a=Ke.findIndex(_=>_.name===e);if(a===-1)return;const r=Ke[a],n=ht.get(e);n&&(n.forEach(_=>_()),ht.delete(e));function s(){Ke.splice(a,1),ve.push(r),setTimeout(t)}const o=r.unload();o instanceof Promise?o.then(s).catch(i):s()})}catch(t){throw new Error(`[GameMode]: script ${e} unload fail
3
- ${t}`)}},fC=async e=>{await At(e),await Et(e)},PC=e=>ht.has(e);Oi(async({next:e})=>{const t=ve.map(i=>i.name);for(const i of t)await Et(i);return e()}),Gi(async({next:e})=>{const t=Ke.map(i=>i.name);for(const i of t)await At(i);return e()});const pC=function(e,...t){if(ve.some(i=>i.name===e.name)||Ke.some(i=>i.name===e.name))throw new Error(`[GameMode]: script ${e.name} has already been applied`);e.load=e.load.bind(e,...t),ve.push(e)},de=new Uint32Array(65536),IC=(e,t)=>{const i=e.length,a=t.length,r=1<<i-1;let n=-1,s=0,o=i,_=i;for(;_--;)de[e.charCodeAt(_)]|=1<<_;for(_=0;_<a;_++){let d=de[t.charCodeAt(_)];const h=d|s;d|=(d&n)+n^n,s|=~(d|n),n&=d,s&r&&o++,n&r&&o--,s=s<<1|1,n=n<<1|~(h|s),s&=h}for(_=i;_--;)de[e.charCodeAt(_)]=0;return o},CC=(e,t)=>{const i=t.length,a=e.length,r=[],n=[],s=Math.ceil(i/32),o=Math.ceil(a/32);for(let y=0;y<s;y++)n[y]=-1,r[y]=0;let _=0;for(;_<o-1;_++){let y=0,L=-1;const M=_*32,Q=Math.min(32,a)+M;for(let V=M;V<Q;V++)de[e.charCodeAt(V)]|=1<<V;for(let V=0;V<i;V++){const he=de[t.charCodeAt(V)],oe=n[V/32|0]>>>V&1,ne=r[V/32|0]>>>V&1,Dt=he|y,Tt=((he|ne)&L)+L^L|he|ne;let $e=y|~(Tt|L),nt=L&Tt;$e>>>31^oe&&(n[V/32|0]^=1<<V),nt>>>31^ne&&(r[V/32|0]^=1<<V),$e=$e<<1|oe,nt=nt<<1|ne,L=nt|~(Dt|$e),y=$e&Dt}for(let V=M;V<Q;V++)de[e.charCodeAt(V)]=0}let d=0,h=-1;const u=_*32,I=Math.min(32,a-u)+u;for(let y=u;y<I;y++)de[e.charCodeAt(y)]|=1<<y;let S=a;for(let y=0;y<i;y++){const L=de[t.charCodeAt(y)],M=n[y/32|0]>>>y&1,Q=r[y/32|0]>>>y&1,V=L|d,he=((L|Q)&h)+h^h|L|Q;let oe=d|~(he|h),ne=h&he;S+=oe>>>a-1&1,S-=ne>>>a-1&1,oe>>>31^M&&(n[y/32|0]^=1<<y),ne>>>31^Q&&(r[y/32|0]^=1<<y),oe=oe<<1|M,ne=ne<<1|Q,h=ne|~(V|oe),d=oe&V}for(let y=u;y<I;y++)de[e.charCodeAt(y)]=0;return S},ji=(e,t)=>{if(e.length<t.length){const i=t;t=e,e=i}return t.length===0?e.length:e.length<=32?IC(e,t):CC(e,t)},yC=(e,t)=>{let i=1/0,a=0;for(let r=0;r<t.length;r++){const n=ji(e,t[r]);n<i&&(i=n,a=r)}return t[a]},be=new Map,Le=new Map,Fi=/[^/\s]+/gi,it={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"}},[SC,EC]=m({name:"OnCommandReceived",isNative:!1,throwOnError:!0,beforeEach(e,t,i,a,r,n,s,o,_){return{player:e,command:t,cmdText:i,buffer:a,strictMainCmd:r,noStrictMainCmd:n,hasStrict:s,hasNoStrict:o,subcommand:_}}}),[AC,NC]=m({name:"OnCommandPerformed",isNative:!1,beforeEach(e,t,i,a,r,n,s,o,_){return{player:e,command:t,cmdText:i,buffer:a,strictMainCmd:r,noStrictMainCmd:n,hasStrict:s,hasNoStrict:o,subcommand:_}}}),[DC,at]=m({name:"OnCommandError",isNative:!1,defaultValue:!1,beforeEach(e,t,i,a,r,n,s,o,_,d){return{player:e,error:t,command:i,cmdText:a,buffer:r,strictMainCmd:n,noStrictMainCmd:s,hasStrict:o,hasNoStrict:_,subcommand:d,getSuggestion(){const h=yC(a,[...be.keys(),...Le.keys()]),u=ji(a,h);return{suggestion:h,distance:u}}}}}),[TC,vC]=m({name:"OnPlayerCommandTextI18n",identifier:"iai",defaultValue:!1,beforeEach(e,t){const i=ce.get(e);let a=t,r="";return typeof t=="string"?(r=t,a=E.encodeToBuf(r,"utf-8")):r=E.decodeFromBuf(t,i.charset),{player:i,buffer:a,cmdText:r}}}),[bC,LC]=m({name:"OnPlayerCommandTextRaw",isNative:!1,defaultValue:!1,beforeEach(e,t,i){return{player:e,buffer:t,cmdText:i}}});function wC(e){const t=[];let i="";for(let a=0;a<e.length;a++)i+=e[a]+" ",t.push(i.trimEnd());return t.reverse()}TC(({player:e,buffer:t,cmdText:i,next:a})=>{const r=LC(e,t,i);if(r)return r;const n=i.match(Fi)||[],s=wC(n),o=s.find(L=>be.has(L)),_=s.map(L=>L.toLowerCase()).find(L=>Le.has(L)),d=!!o,h=!!_,u=n.join(" ");let I=[];const S=[[o,be,!0],[_,Le,!1]],y=[u,i,t,o,_,d,h,I];if(d||h){const L=S[0][0]||S[1][0];I=u.replace(L,"").trim().split(" ")}else return at(e,it.NOT_EXIST,...y);try{if(!EC(e,...y))return at(e,it.RECEIVED_REJECTED,...y)}catch(L){const M=typeof L=="object"?L:{error:L};return at(e,{...it.RECEIVED_THROW,...M},...y)}for(const[L,M,Q]of S){if(!L)continue;const V=M.get(L),[,he]=V;if(!he(e,L,I,i,t,Q))return at(e,it.REJECTED,...y)}return NC(e,u,i,t,o,_,d,h,I)?(a(),!0):at(e,it.PERFORMED,...y)});function RC(e,t,i,a,r,n){return{player:e,mainCommand:t,subcommand:i,cmdText:a,buffer:r,isStrict:n}}class ae{static caseSensitive=!1;constructor(){}static on(t,i){let a=ae.caseSensitive,r,n;typeof t=="string"||t instanceof Array?(r=t,n=i):(r=t.command,n=t.run,typeof t.caseSensitive<"u"&&(a=t.caseSensitive));const s=Array.isArray(r)?r:[r],o=s.find(h=>!h.match(Fi));if(o)return console.log(`error command ${o} format`),()=>{};const _=a?be:Le,d=s.map(h=>{const u=h.replaceAll("/",""),I=a?u:u.toLowerCase();if(!_.has(I)){const y=m({name:a?"$"+I:I,isNative:!1,beforeEach:RC});_.set(I,y)}const[S]=_.get(I);return[I,S(n)]});return()=>{d.forEach(h=>{const[u,I]=h;I()===0&&_.delete(u)})}}static off(t){(Array.isArray(t)?t:[t]).forEach(i=>{let a=i.replaceAll("/","");be.has(a)&&(ee.has(a)&&ee.delete(a),be.has(a)&&be.delete(a)),a=a.toLowerCase(),Le.has(a)&&(ee.has(a)&&ee.delete(a),Le.has(a)&&Le.delete(a))})}static enableCaseSensitive(){ae.caseSensitive=!0}static disableCaseSensitive(){ae.caseSensitive=!1}static isCaseSensitive(){return ae.caseSensitive}static simulate(t,i){return vC(t.id,i)}}class H{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static onInit=Oi;static onExit=Gi;static onIncomingConnection=gC;static onRconCommand=uC;static onRconLoginAttempt=mC;static use(t,...i){return pC(t,...i),this}static loadUseScript=Et;static reloadUseScript=fC;static unloadUseScript=At;static isUseScriptLoaded=PC;static enableCmdCaseSensitive=ae.enableCaseSensitive;static disableCmdCaseSensitive=ae.disableCaseSensitive;static isCmdCaseSensitive=ae.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");Xs(t)}static setWorldTime(t){if(t<0||t>23)throw new Error("[GameMode]: The valid hour value is only 0 to 23");Ws(t)}static getWorldTime=Us;static setTeamCount=gl;static sendRconCommand=WI;static addPlayerClass=ul;static addPlayerClassEx=ml;static createExplosion(t,i,a,r,n){if(r<0||r>13)throw new Error("[GameMode]: The valid explosion type value is only 0 to 13");return zs(t,i,a,r,n)}static manualVehicleEngineAndLights=qg;static blockIpAddress=Gl;static unBlockIpAddress=jl;static getServerTickRate=al;static addCharModel=Ep;static getCustomModelPath=Tp;static addSimpleModel(t,i,a,r,n){return this.checkSimpleModel(t,i,a,r,n)?Ap(t,i,a,r,n):!1}static addSimpleModelTimed(t,i,a,r,n,s,o){return this.checkSimpleModel(t,i,a,r,n,s,o)?Np(t,i,a,r,n,s,o):!1}static checkSimpleModel(t,i,a,r,n,s,o){if(t<-1)throw new Error("[GameMode]: AddSimpleModel - Error virtual world");if(i<0)throw new Error("[GameMode]: AddSimpleModel - Error baseId");if(a>W.MAX_CUSTOM_OBJECT_ID||a<W.MIN_CUSTOM_OBJECT_ID)throw new Error("[GameMode]: AddSimpleModel - Error newId range");if(r.trim().length===0)throw new Error("[GameMode]: AddSimpleModel - Empty dffName");if(n.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(o!==void 0&&(o<0||o>23))throw new Error("[GameMode]: AddSimpleModel - Error time off range");return!0}static isValidCustomModel=Ti;static getCustomModePath=Gp;static getConsoleVarAsString(t,i="utf8"){const{consoleVarBuf:a,ret:r}=vs(t);return{consoleVar:E.decodeFromBuf(E.getValidStr(a),i),ret:r}}static getRestartTime=js;static setRestartTime=Gs;static allowAdminTeleport=Ss;static isAdminTeleportAllowed=Es;static allowInteriorWeapons=As;static areInteriorWeaponsAllowed=Ns;static areAllAnimationsEnabled=Ds;static enableAllAnimations=Ts;static enableStuntBonusForAll=nl;static enableVehicleFriendlyFire=Ks;static enableZoneNames=Js;static disableInteriorEnterExits=Qs;static setGameModeText=Bs;static getGravity=Zs;static setGravity=Ys;static showNameTags=xs;static disableNameTagLOS=el;static usePlayerPedAnims=$s;static showPlayerMarkers=Hs;static limitPlayerMarkerRadius=il;static limitGlobalChatRadius=tl;static setNameTagDrawDistance=qs;static findModelFileNameFromCRC=vp;static findTextureFileNameFromCRC=bp;static getWeaponName=_l;static setObjectsDefaultCameraCollision=Sp;static vectorSize=Ct;static clearBanList=Vl;static isBanned=kl;static isValidNickName=ms;static allowNickNameCharacter=fs;static isNickNameCharacterAllowed=Ps;static addServerRule=ps;static setServerRule=Is;static isValidServerRule=Cs;static removeServerRule=ys;static getWeaponSlot=ol;static getAvailableClasses=cl;static getPlayerClass=dl;static editPlayerClass=hl;static toggleChatTextReplacement=sl;static chatTextReplacementToggled=ll;static getConsoleVarAsInt=bs;static getConsoleVarAsBool=Ls;static getWeather=ws;static getServerRuleFlag=Rs;static setServerRuleFlags=Os;static getAnimationName=rl}const D={skip:!1};H.onInit(({next:e})=>(D.skip=!1,e())),H.onExit(({next:e})=>(D.skip=!0,e()));class p{sourceInfo=null;isStatic=!1;static createdCount=0;_id=l.VEHICLE_ID;get id(){return this._id}constructor(t,i=!1){if(typeof t=="number"){if(t===l.VEHICLE_ID)throw new Error("[Vehicle]: Invalid id");const a=p.getInstance(t);if(a)return a;this._id=t,Ie.set(this._id,this),this.isValid()&&p.createdCount++}else this.sourceInfo=t,this.isStatic=i}create(){if(this.id!==l.VEHICLE_ID)throw new Error("[Vehicle]: Cannot create again");if(!this.sourceInfo)throw new Error("[Vehicle]: Cannot create with only id");const{modelId:t,x:i,y:a,z:r,zAngle:n,color:s,respawnDelay:o,addSiren:_}=this.sourceInfo;if(this.isStatic){if(typeof o>"u"){this._id=p.__inject__.addStatic(t,i,a,r,n,s[0],s[1]);return}this._id=p.__inject__.addStaticEx(t,i,a,r,n,s[0],s[1],o||-1,_||!1)}else this._id=p.__inject__.create(t,i,a,r,n,s[0],s[1],o||-1,_||!1);if(this._id===l.VEHICLE_ID||p.createdCount===W.MAX_VEHICLES)throw new Error("[Vehicle]: Cannot create vehicle");p.createdCount++,Ie.set(this._id,this)}destroy(){if(this.id===l.VEHICLE_ID&&!D.skip)throw new Error("[Vehicle]: Cannot destroy the vehicle before create");D.skip||p.__inject__.destroy(this._id),p.createdCount--,Ie.delete(this._id),this._id=l.VEHICLE_ID,p.getInstances().length||(p.createdCount=0)}addComponent(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.addComponent(this.id,t)}removeComponent(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.removeComponent(this.id,t)}getComponentInSlot(t){return this.id===l.VEHICLE_ID?0:p.__inject__.getComponentInSlot(this.id,t)}linkToInterior(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.linkToInterior(this.id,t)}setVirtualWorld(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.setVirtualWorld(this.id,t)}getVirtualWorld(){return this.id===l.VEHICLE_ID?0:p.__inject__.getVirtualWorld(this.id)}repair(){return this.id===l.VEHICLE_ID?!1:p.__inject__.repair(this.id)}setPos(t,i,a){return this.id===l.VEHICLE_ID?!1:p.__inject__.setPos(this.id,t,i,a)}getPos(){return p.__inject__.getPos(this.id)}getHealth(){return p.__inject__.getHealth(this.id)}setHealth(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.setHealth(this.id,t)}isPlayerIn(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.isPlayerIn(t.id,this.id)}putPlayerIn(t,i){if(this.id===l.VEHICLE_ID||i<0)return 0;if(i>4)throw new Error("[Vehicle]: If the seat is invalid or is taken, will cause a crash when they EXIT the vehicle.");return p.__inject__.putPlayerIn(t.id,this.id,i)}getZAngle(){return p.__inject__.getZAngle(this.id)}setZAngle(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.setZAngle(this.id,t)}setNumberPlate(t){if(this.id===l.VEHICLE_ID)return!1;if(t.length<1||t.length>32)throw new Error("[Vehicle]: The length of the number plate ranges up to 32 characters");if(!/^[a-zA-Z0-9]+$/.test(t))throw new Error("[Vehicle]: number plates only allow letters and numbers");return p.__inject__.setNumberPlate(this.id,t)}changeColors(t,i){return this.id===l.VEHICLE_ID?!1:p.__inject__.changeColors(this.id,t,i)}setVelocity(t,i,a){return this.id===l.VEHICLE_ID?!1:p.__inject__.setVelocity(this.id,t,i,a)}getVelocity(){return p.__inject__.getVelocity(this.id)}getSpeed(t=180){if(this.id===l.VEHICLE_ID)return 0;const{x:i,y:a,z:r}=this.getVelocity();return Ct(i,a,r)*t}setAngularVelocity(t,i,a){return this.id===l.VEHICLE_ID?!1:p.__inject__.setAngularVelocity(this.id,t,i,a)}getDamageStatus(){return p.__inject__.getDamageStatus(this.id)}updateDamageStatus(t,i,a,r){return p.__inject__.updateDamageStatus(this.id,t,i,a,r)}getDistanceFromPoint(t,i,a){return p.__inject__.getDistanceFromPoint(this.id,t,i,a)}getModel(){return p.__inject__.getModel(this.id)}static getModelInfo(t,i){return p.__inject__.getModelInfo(t,i)}getModelInfo(t){return p.getModelInfo(this.getModel(),t)}getRotation(){return p.__inject__.getRotation(this.id)}getRotationQuat(){return p.__inject__.getRotationQuat(this.id)}setRespawn(){return this.id===l.VEHICLE_ID?!1:p.__inject__.setRespawn(this.id)}isStreamedIn(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.isStreamedIn(this.id,t.id)}setParamsCarDoors(t=G.UNSET,i=G.UNSET,a=G.UNSET,r=G.UNSET){return this.id===l.VEHICLE_ID?!1:p.__inject__.setParamsCarDoors(this.id,t,i,a,r)}setParamsCarWindows(t=G.UNSET,i=G.UNSET,a=G.UNSET,r=G.UNSET){return this.id===l.VEHICLE_ID?0:p.__inject__.setParamsCarWindows(this.id,t,i,a,r)}getParamsCarDoors(){return p.__inject__.getParamsCarDoors(this.id)}getParamsCarWindows(){return p.__inject__.getParamsCarWindows(this.id)}setParamsEx(t,i,a,r,n,s,o){return this.id===l.VEHICLE_ID?!1:p.__inject__.setParamsEx(this.id,t,i,a,r,n,s,o)}getParamsEx(){if(this.id===l.VEHICLE_ID)return{engine:G.UNSET,lights:G.UNSET,alarm:G.UNSET,doors:G.UNSET,bonnet:G.UNSET,boot:G.UNSET,objective:G.UNSET,ret:!1};const[t,i,a,r,n,s,o,_]=p.__inject__.getParamsEx(this.id);return{engine:t,lights:i,alarm:a,doors:r,bonnet:n,boot:s,objective:o,ret:!!_}}toggleEngine(t){if(this.id===l.VEHICLE_ID)return 0;const{lights:i,alarm:a,doors:r,bonnet:n,boot:s,objective:o}=this.getParamsEx();return this.setParamsEx(t,i,a,r,n,s,o)}toggleLights(t){if(this.id===l.VEHICLE_ID)return 0;const{engine:i,alarm:a,doors:r,bonnet:n,boot:s,objective:o}=this.getParamsEx();return this.setParamsEx(i,t,a,r,n,s,o)}toggleAlarm(t){if(this.id===l.VEHICLE_ID)return 0;const{engine:i,lights:a,doors:r,bonnet:n,boot:s,objective:o}=this.getParamsEx();return this.setParamsEx(i,a,t,r,n,s,o)}toggleDoors(t){if(this.id===l.VEHICLE_ID)return 0;const{engine:i,lights:a,alarm:r,bonnet:n,boot:s,objective:o}=this.getParamsEx();return this.setParamsEx(i,a,r,t,n,s,o)}toggleBonnet(t){if(this.id===l.VEHICLE_ID)return 0;const{engine:i,lights:a,alarm:r,doors:n,boot:s,objective:o}=this.getParamsEx();return this.setParamsEx(i,a,r,n,t,s,o)}toggleBoot(t){if(this.id===l.VEHICLE_ID)return 0;const{engine:i,lights:a,alarm:r,doors:n,bonnet:s,objective:o}=this.getParamsEx();return this.setParamsEx(i,a,r,n,s,t,o)}toggleObjective(t){if(this.id===l.VEHICLE_ID)return 0;const{engine:i,lights:a,alarm:r,doors:n,bonnet:s,boot:o}=this.getParamsEx();return this.setParamsEx(i,a,r,n,s,o,t)}getParamsSirenState(){return this.id===l.VEHICLE_ID?G.UNSET:p.__inject__.getParamsSirenState(this.id)}setParamsForPlayer(t,i=G.UNSET,a=G.UNSET){return this.id===l.VEHICLE_ID?!1:p.__inject__.setParamsForPlayer(this.id,t.id,i,a)}isTrailerAttached(){return this.id===l.VEHICLE_ID?!1:p.__inject__.isTrailerAttached(this.id)}changePaintjob(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.changePaintjob(this.id,t)}attachTrailer(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.attachTrailer(t.id,this.id)}detachTrailer(){this.isTrailerAttached()&&p.__inject__.detachTrailer(this.id)}getTrailer(){return p.getInstance(pu(this.id))}isValid(){return D.skip&&this.id!==l.VEHICLE_ID?!0:p.isValid(this.id)}getMatrix(){return p.__inject__.getMatrix(this.id)}getTrainSpeed(){return this.id===l.VEHICLE_ID?0:p.__inject__.getTrainSpeed(this.id)}getHydraReactorAngle(){return this.id===l.VEHICLE_ID?0:p.__inject__.getHydraReactorAngle(this.id)}getLandingGearState(){return this.id===l.VEHICLE_ID?0:p.__inject__.getLandingGearState(this.id)}getSirenState(){return this.id===l.VEHICLE_ID?!1:p.__inject__.getSirenState(this.id)}getDriver(){return ce.get(Ci(this.id))}getLastDriver(){return ce.get(Ii(this.id))}isSirenEnabled(){return p.__inject__.isSirenEnabled(this.id)}toggleSirenEnabled(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.toggleSirenEnabled(this.id,t)}setParamsSirenState(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.setParamsSirenState(this.id,t)}isDead(){return this.id===l.VEHICLE_ID?!0:p.__inject__.isDead(this.id)}setDead(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.setDead(this.id,t)}setBeenOccupied(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.setBeenOccupied(this.id,t)}getRespawnTick(){return this.id===l.VEHICLE_ID?0:p.__inject__.getRespawnTick(this.id)}setRespawnTick(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.setRespawnTick(this.id,t)}isOccupied(){return this.id===l.VEHICLE_ID?!1:p.__inject__.isOccupied(this.id)}hasBeenOccupied(){return this.id===l.VEHICLE_ID?!1:p.__inject__.hasBeenOccupied(this.id)}getOccupiedTick(){return this.id===l.VEHICLE_ID?0:p.__inject__.getOccupiedTick(this.id)}setOccupiedTick(t){return this.id===l.VEHICLE_ID?0:p.__inject__.setOccupiedTick(this.id,t)}getCab(){return this.id===l.VEHICLE_ID?0:p.__inject__.getCab(this.id)}getRespawnDelay(){return this.id===l.VEHICLE_ID?0:p.__inject__.getRespawnDelay(this.id)}setRespawnDelay(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.setRespawnDelay(this.id,t)}getNumberPlate(){return p.__inject__.getNumberPlate(this.id)}getInterior(){return this.id===l.VEHICLE_ID?0:p.__inject__.getInterior(this.id)}getPaintjob(){return this.id===l.VEHICLE_ID?l.VEHICLE_ID:p.__inject__.getPaintjob(this.id)}getColors(){return p.__inject__.getColors(this.id)}setSpawnInfo(t,i,a,r,n,s,o,_=-2,d=-2){return this.id===l.VEHICLE_ID?!1:p.__inject__.setSpawnInfo(this.id,t,i,a,r,n,N(s),N(o),_,d)}getSpawnInfo(){return p.__inject__.getSpawnInfo(this.id)}getRandomColorPair(){return p.__inject__.getRandomColorPair(this.getModel())}show(){return this.id===l.VEHICLE_ID?!1:p.__inject__.show(this.id)}hide(){return this.id===l.VEHICLE_ID?!1:p.__inject__.hide(this.id)}isHidden(){return this.id===l.VEHICLE_ID?!1:p.__inject__.isHidden(this.id)}getOccupant(t){return p.__inject__.getOccupant(this.id,t)}getMaxPassengers(){return p.__inject__.getMaxPassengers(this.getModel())}countOccupants(){return p.__inject__.countOccupants(this.getModel())}canHaveComponent(t){return this.id===l.VEHICLE_ID?!1:p.__inject__.canHaveComponent(this.getModel(),t)}getSeats(){return p.__inject__.getSeats(this.getModel())}static getMaxPassengers(t){return p.__inject__.getMaxPassengers(t)}static getRandomColorPair(t){return p.__inject__.getRandomColorPair(t)}static getComponentType(t){return p.__inject__.getComponentType(t)}static colorIndexToColor(t,i=255){return p.__inject__.colorIndexToColor(t,i)}static isValid(t){return p.__inject__.isValid(t)}static getModelsUsed(){return p.__inject__.getModelsUsed()}static getModelCount(t){return p.__inject__.getModelCount(t)}static canHaveComponent(t,i){return p.__inject__.canHaveComponent(t,i)}static getSeats(t){return p.__inject__.getSeats(t)}static getInstance(t){return Ie.get(t)}static getInstances(){return[...Ie.values()]}static __inject__={addStatic:Ou,addStaticEx:Gu,create:Hg,destroy:Wg,addComponent:_u,removeComponent:cu,getComponentInSlot:yu,linkToInterior:ou,setVirtualWorld:Lu,getVirtualWorld:wu,repair:Eu,setPos:Xg,getPos:Kg,getHealth:uu,setHealth:gu,isPlayerIn:J_,putPlayerIn:T_,getZAngle:Zg,setZAngle:$g,setNumberPlate:Iu,changeColors:du,setVelocity:Nu,getVelocity:Au,setAngularVelocity:Du,getDamageStatus:Tu,updateDamageStatus:vu,getDistanceFromPoint:Jg,getModel:Cu,getModelInfo:bu,getRotation:Yg,getRotationQuat:zg,setRespawn:lu,isStreamedIn:Ug,setParamsCarDoors:au,setParamsCarWindows:nu,getParamsCarDoors:ru,getParamsCarWindows:su,setParamsEx:eu,getParamsEx:tu,getParamsSirenState:iu,setParamsForPlayer:Qg,isTrailerAttached:Pu,changePaintjob:hu,attachTrailer:mu,detachTrailer:fu,getMatrix:kg,getTrainSpeed:Vg,getHydraReactorAngle:Mg,getLandingGearState:Fg,getSirenState:jg,getDriver:Ci,getLastDriver:Ii,isSirenEnabled:Rg,toggleSirenEnabled:Lg,setParamsSirenState:wg,isDead:Tg,setDead:vg,setBeenOccupied:bg,getRespawnTick:Ng,setRespawnTick:Dg,isOccupied:Ag,hasBeenOccupied:Eg,getOccupiedTick:yg,setOccupiedTick:Sg,getCab:Cg,getRespawnDelay:Ig,setRespawnDelay:pg,getNumberPlate:Pg,getInterior:fg,getPaintjob:mg,getColors:ug,setSpawnInfo:gg,getSpawnInfo:hg,getRandomColorPair:Bg,show:ju,hide:Fu,isHidden:Mu,getOccupant:Wu,getMaxPassengers:Uu,countOccupants:Ku,getComponentType:Su,colorIndexToColor:xg,isValid:Ru,getModelsUsed:Gg,getModelCount:Og,canHaveComponent:Xu,getSeats:Zu}}class C{sourceInfo=null;_id=l.OBJECT_ID;_player=null;get id(){return this._id}constructor(t,i){if(typeof t=="number"){if(t===l.OBJECT_ID)throw new Error("[ObjectMp]: Invalid id");i&&(this._player=i);const a=C.getInstance(t,i);if(a)return a;this._id=t,this.isGlobal()?Te.set(this._id,this):i&&(K.has(i)||K.set(i,new Map),K.get(this.getPlayer()).set(this.id,this))}else this.sourceInfo=t,this._player=null}create(){if(!this.sourceInfo)throw new Error("[ObjectMp]: Cannot create with only id");if(this.id!==l.OBJECT_ID)throw new Error("[ObjectMp]: Cannot create again");const{modelId:t,x:i,y:a,z:r,rx:n,ry:s,rz:o,drawDistance:_=0}=this.sourceInfo;if(this.isGlobal()){if(this._id=C.__inject__.create(t,i,a,r,n,s,o,_),this.id===l.OBJECT_ID||C.getInstances().length===W.MAX_OBJECTS)throw new Error("[ObjectMp]: Cannot create object");return Te.set(this._id,this),this}const d=this.getPlayerId();if(d===l.PLAYER_ID)return this;const h=this.getPlayer();if(this._id=C.__inject__.createPlayer(d,t,i,a,r,n,s,o,_),this.id===l.OBJECT_ID||C.getInstances(h).length===W.MAX_OBJECTS)throw new Error("[ObjectMp]: Cannot create player object");return K.has(h)||K.set(h,new Map),K.get(this.getPlayer()).set(this.id,this),this}destroy(){if(this.id===l.OBJECT_ID)throw new Error("[ObjectMp]: Cannot destroy before create");if(this.isGlobal())D.skip||C.__inject__.destroy(this.id),Te.delete(this.id);else{const t=this.getPlayerId();if(t===l.PLAYER_ID)return this;const i=this.getPlayer();if(D.skip||C.__inject__.destroyPlayer(t,this.id),K.has(i)){const a=K.get(i);a.delete(this.id),a.size===0&&K.delete(i)}}return this._id=l.OBJECT_ID,this}isGlobal(){return!(this.sourceInfo?this.sourceInfo.player:this._player)}isPlayer(){return!this.isGlobal()}getPlayer(){return this._player?this._player:this.sourceInfo&&this.sourceInfo.player?this.sourceInfo.player:null}getPlayerId(){const t=this.getPlayer();return t?t.id:l.PLAYER_ID}isValid(){return D.skip&&this.id!==l.OBJECT_ID?!0:this.isGlobal()?C.isValid(this.id):C.isValid(this.id,this.getPlayerId())}getModel(){return this.sourceInfo?this.sourceInfo.modelId:this.isGlobal()?C.__inject__.getModel(this.id):C.__inject__.getModelPlayer(this.getPlayerId(),this.id)}getPos(){if(this.id===l.OBJECT_ID)throw new Error("[ObjectMp]: Cannot get position before create");return this.isGlobal()?C.__inject__.getPos(this.id):C.__inject__.getPosPlayer(this.getPlayerId(),this.id)}setPos(t,i,a){if(this.id===l.OBJECT_ID)throw new Error("[ObjectMp]: Cannot set position before create");return this.isGlobal()?C.__inject__.setPos(this.id,t,i,a):C.__inject__.setPosPlayer(this.getPlayerId(),this.id,t,i,a)}getRot(){if(this.id===l.OBJECT_ID)throw new Error("[ObjectMp]: Cannot get rotation before create");return this.isGlobal()?C.__inject__.getRot(this.id):C.__inject__.getRotPlayer(this.getPlayerId(),this.id)}setRot(t,i,a){if(this.id===l.OBJECT_ID)throw new Error("[ObjectMp]: Cannot set rotation before create");return this.isGlobal()?C.__inject__.setRot(this.id,t,i,a):C.__inject__.setRotPlayer(this.getPlayerId(),this.id,t,i,a)}move(t,i,a,r,n,s,o){if(this.id===l.OBJECT_ID)throw new Error("[ObjectMp]: Cannot start moving before create");if(r<0)throw new Error("[ObjectMp]: speed must not be less than 0");if(r>120*1e3)throw new Error("[ObjectMp]: speed more than 120 seconds, warn if it's not intentional");return this.isMoving()&&this.stop(),this.isGlobal()?C.__inject__.move(this.id,t,i,a,r,n,s,o):C.__inject__.movePlayer(this.getPlayerId(),this.id,t,i,a,r,n,s,o)}stop(){if(this.id===l.OBJECT_ID)throw new Error("[ObjectMp]: Cannot stop moving before create");return this.isGlobal()?C.__inject__.stop(this.id):C.__inject__.stopPlayer(this.getPlayerId(),this.id)}isMoving(){return this.id===l.OBJECT_ID?!1:this.isGlobal()?C.__inject__.isMoving(this.id):C.__inject__.isMovingPlayer(this.getPlayerId(),this.id)}attachCamera(t){if(this.id===l.OBJECT_ID)return!1;if(this.isGlobal()){if(!t)throw new Error("[ObjectMp]: Cannot attachCamera without player");return C.__inject__.attachCamera(t.id,this.id)}return C.__inject__.attachCameraPlayer(this.getPlayerId(),this.id)}attachToObject(t,i,a,r,n,s,o,_=!0){if(this.id===l.OBJECT_ID||t.id===l.OBJECT_ID)throw new Error("[ObjectMp]: Cannot attachToObject before both are created");if(this.isGlobal()&&t.isGlobal())return C.__inject__.attachToObject(this.id,t.id,i,a,r,n,s,o,_);if(!this.isGlobal()&&!t.isGlobal())return C.__inject__.attachPlayerToObject(this.getPlayerId(),this.id,t.id,i,a,r,n,s,o,_);throw new Error("[ObjectMp]: Cannot attachToObject with global and player object")}attachToPlayer(t,i,a,r,n,s,o){return this.id===l.OBJECT_ID?!1:this.isGlobal()?C.__inject__.attachToPlayer(this.id,t.id,i,a,r,n,s,o):C.__inject__.attachPlayerToPlayer(this.getPlayerId(),this.id,t.id,i,a,r,n,s,o)}attachToVehicle(t,i,a,r,n,s,o){return this.id===l.OBJECT_ID?!1:this.isGlobal()?C.__inject__.attachToVehicle(this.id,t.id,i,a,r,n,s,o):C.__inject__.attachPlayerToVehicle(this.getPlayerId(),this.id,t.id,i,a,r,n,s,o)}edit(t){if(this.id===l.OBJECT_ID)throw new Error("[ObjectMp]: Cannot edit before create");if(this.isGlobal()){if(!t)throw new Error("[ObjectMp]: Cannot edit without player");return t.endObjectEditing(),C.__inject__.beginEditing(t.id,this.id)}const i=this.getPlayer();return i.endObjectEditing(),C.__inject__.beginEditingPlayer(i.id,this.id)}isMaterialUsed(t){return this.id===l.OBJECT_ID?!1:this.isGlobal()?C.__inject__.isMaterialSlotUsed(this.id,t):C.__inject__.isMaterialSlotUsedPlayer(this.getPlayerId(),this.id,t)}getMaterial(t){if(this.id===l.OBJECT_ID)throw new Error("[ObjectMp]: Cannot get material before create");return this.isGlobal()?C.__inject__.getMaterial(this.id,t):C.__inject__.getMaterialPlayer(this.getPlayerId(),this.id,t)}setMaterial(t,i,a,r,n="#000"){if(this.id===l.OBJECT_ID)throw new Error("[ObjectMp]: Cannot set material before create");return this.isGlobal()?C.__inject__.setMaterial(this.id,t,i,a,r,N(n)):C.__inject__.setMaterialPlayer(this.getPlayerId(),this.id,t,i,a,r,N(n))}getMaterialText(t){if(this.id===l.OBJECT_ID)throw new Error("[ObjectMp]: Cannot get material text before create");return this.isGlobal()?C.__inject__.getMaterialText(this.id,t,this.sourceInfo?.charset||"utf8"):C.__inject__.getMaterialTextPlayer(this.getPlayerId(),this.id,t,this.sourceInfo?.charset||"utf8")}setMaterialText(t=this.sourceInfo?.charset,i,a,r=ot.SIZE_256x128,n="Arial",s=24,o=!0,_="#fff",d="#000",h=0){if(this.id===l.OBJECT_ID)throw new Error("[ObjectMp]: Cannot set material text before create");return this.sourceInfo&&(this.sourceInfo.charset=t),this.isGlobal()?wi(t||"utf8",this.id,i,a,r,n,s,o,N(_),N(d),h):Ri(t||"utf8",this.getPlayerId(),this.id,i,a,r,n,s,o,N(_),N(d),h)}setNoCameraCollision(){return this.id===l.OBJECT_ID?!1:this.isGlobal()?C.__inject__.setNoCameraCollision(this.id):C.__inject__.setNoCameraCollisionPlayer(this.getPlayerId(),this.id)}isNoCameraCol(){return this.id===l.OBJECT_ID?!1:this.isGlobal()?C.__inject__.isNoCameraCol(this.id):C.__inject__.isNoCameraColPlayer(this.getPlayerId(),this.id)}hasCameraCollision(){return!this.isNoCameraCol()}getDrawDistance(){return this.id===l.OBJECT_ID?0:this.isGlobal()?C.__inject__.getDrawDistance(this.id):C.__inject__.getDrawDistancePlayer(this.getPlayerId(),this.id)}setMoveSpeed(t){return this.id===l.OBJECT_ID?!1:this.isGlobal()?C.__inject__.setMoveSpeed(this.id,t):C.__inject__.setMoveSpeedPlayer(this.getPlayerId(),this.id,t)}getMoveSpeed(){return this.id===l.OBJECT_ID?0:this.isGlobal()?C.__inject__.getMoveSpeed(this.id):C.__inject__.getMoveSpeedPlayer(this.getPlayerId(),this.id)}getMovingTargetPos(){return this.isGlobal()?C.__inject__.getMovingTargetPos(this.id):C.__inject__.getMovingTargetPosPlayer(this.getPlayerId(),this.id)}getSyncRotation(){return this.isGlobal()?C.__inject__.getSyncRotation(this.id):C.__inject__.getSyncRotationPlayer(this.getPlayerId(),this.id)}getAttachedOffset(){return this.isGlobal()?C.__inject__.getAttachedOffset(this.id):C.__inject__.getAttachedOffsetPlayer(this.getPlayerId(),this.id)}getTarget(){return this.isGlobal()?C.__inject__.getTarget(this.id):C.__inject__.getTargetPlayer(this.getPlayerId(),this.id)}static isValid(t,i){return i===l.PLAYER_ID?!1:typeof i>"u"?C.__inject__.isValid(t):C.__inject__.isValidPlayer(i,t)}static getInstance(t,i){if(!i)return Te.get(t);if(i.id!==l.PLAYER_ID)return K.get(i)?.get(t)}static getInstances(t){return t?t.id===l.PLAYER_ID?[]:[...K.get(t)?.values()||[]]:[...Te.values()]}static getPlayersInstances(){return Array.from(K.entries()).map(([t,i])=>[t,Array.from(i.values())])}static __inject__={create:tp,createPlayer:Zp,destroy:mp,destroyPlayer:iI,setMaterialText:wi,setMaterialTextPlayer:Ri,setNoCameraCollision:hp,setNoCameraCollisionPlayer:eI,isNoCameraCol:gp,isNoCameraColPlayer:Up,getDrawDistance:XP,getDrawDistancePlayer:jp,setMoveSpeed:YP,setMoveSpeedPlayer:Fp,getMoveSpeed:ZP,getMoveSpeedPlayer:Mp,getMovingTargetPos:zP,getMovingTargetPosPlayer:kp,getSyncRotation:QP,getSyncRotationPlayer:xp,getAttachedOffset:$P,getAttachedOffsetPlayer:Bp,getTarget:JP,getTargetPlayer:Vp,isValid:up,isValidPlayer:tI,getModel:dp,getModelPlayer:qp,getPos:op,getPosPlayer:Jp,getRot:cp,getRotPlayer:Qp,setPos:lp,setPosPlayer:zp,setRot:_p,setRotPlayer:$p,move:fp,movePlayer:aI,setMaterial:yp,setMaterialPlayer:lI,stop:Pp,stopPlayer:rI,isMoving:pp,isMovingPlayer:nI,attachCamera:pc,attachCameraPlayer:Ic,attachToObject:rp,attachToPlayer:np,attachToVehicle:ip,attachPlayerToObject:ap,attachPlayerToPlayer:sI,attachPlayerToVehicle:Yp,beginEditing:Ip,beginEditingPlayer:Xp,endEditing:Di,getMaterial:ep,getMaterialPlayer:Wp,isMaterialSlotUsed:qP,isMaterialSlotUsedPlayer:Hp,getMaterialText:QI,getMaterialTextPlayer:qI}}const[Mi]=m({name:"OnClientCheckResponse",identifier:"iiii",beforeEach(e,t,i,a){return{player:c.getInstance(e),actionId:t,memAddr:i,data:a}}}),[OC,GC]=m({name:"OnPlayerLocaleChange",isNative:!1,beforeEach(e,t,i){return{player:e,newLocale:t,oldLocale:i}}}),[jC,FC]=m({name:"OnPlayerCharsetChange",isNative:!1,beforeEach(e,t,i){return{player:e,newCharset:t,oldCharset:i}}});class c{constructor(t){if(this.id=t,t<0||t>=W.MAX_PLAYERS)throw new Error(`Invalid player ID: ${t} (valid range: 0-${W.MAX_PLAYERS-1})`);const i=c.getInstance(t);if(i)return i;ce.set(t,this)}static MAX_CHECK_ANDROID_DELAY=10;static SKIP_CHECK_ANDROID=!1;_charset="ISO-8859-1";_locale="en_US";[B]={isAndroid:!0,lastDrunkLevel:0,lastFps:0,lastUpdateTick:0,lastUpdateFpsTick:0,isPaused:!1,isRecording:!1};get lastDrunkLevel(){return this[B].lastDrunkLevel}get lastFps(){return this[B].lastFps}get lastUpdateTick(){return this[B].lastUpdateTick}get lastUpdateFpsTick(){return this[B].lastUpdateFpsTick}get isPaused(){return this[B].isPaused}get isRecording(){return this[B].isRecording}get charset(){return this._charset}set charset(t){const i=this._charset;this._charset=t,FC(this,t,i)}get locale(){return this._locale}set locale(t){const i=this._locale;this._locale=t,GC(this,t,i)}sendClientMessage(t,i){return c.__inject__.sendClientMessage(this,t,i)}static sendClientMessageToAll(t,i){c.__inject__.sendClientMessageToAll(c.getInstances(),t,i)}sendMessageToPlayer(t,i){return c.__inject__.sendMessageToPlayer(t,this.id,i)}sendMessageToAll(t){return c.__inject__.sendMessageToAll(c.getInstances(),this.id,t)}isNpc(){return c.__inject__.isNpc(this.id)}getFps(){return this.lastFps}getDrunkLevel(){return c.__inject__.getDrunkLevel(this.id)}setDrunkLevel(t){if(t<0||t>5e4)throw new Error("[Player]: player's drunk level ranges from 0 to 50000");return c.__inject__.setDrunkLevel(this.id,t)}allowTeleport(t){return c.__inject__.allowTeleport(this.id,t)}isTeleportAllowed(){return c.__inject__.isTeleportAllowed(this.id)}enableCameraTarget(t){return c.__inject__.enableCameraTarget(this.id,t)}enableStuntBonus(t){return c.__inject__.enableStuntBonus(this.id,t)}getInterior(){return c.__inject__.getInterior(this.id)}setInterior(t){return c.__inject__.setInterior(this.id,t)}showNameTag(t,i){return c.__inject__.showNameTag(this.id,t.id,i)}setColor(t){return c.__inject__.setColor(this.id,t)}getColor(){return c.__inject__.getColor(this.id)}setMapIcon(t,i,a,r,n,s,o){return c.__inject__.setMapIcon(this.id,t,i,a,r,n,s,o)}removeMapIcon(t){return c.__inject__.removeMapIcon(this.id,t)}setMarker(t,i){c.__inject__.setMarker(this.id,t.id,i)}getMarker(t){return c.__inject__.getMarker(this.id,t.id)}resetMoney(){return c.__inject__.resetMoney(this.id)}getMoney(){return c.__inject__.getMoney(this.id)}giveMoney(t){return c.__inject__.giveMoney(this.id,t)}resetWeapons(){return c.__inject__.resetWeapons(this.id)}spawn(){return c.__inject__.spawn(this.id)}setHealth(t){return c.__inject__.setHealth(this.id,t)}getHealth(){return c.__inject__.getHealth(this.id)}toggleClock(t){return c.__inject__.toggleClock(this.id,t)}toggleControllable(t){return c.__inject__.toggleControllable(this.id,t)}toggleSpectating(t){return c.__inject__.toggleSpectating(this.id,t)}spectatePlayer(t,i=st.NORMAL){return c.__inject__.spectatePlayer(this.id,t.id,i)}spectateVehicle(t,i=st.NORMAL){return c.__inject__.spectateVehicle(this.id,t.id,i)}forceClassSelection(){return c.__inject__.forceClassSelection(this.id)}kick(){return c.__inject__.kick(this.id)}ban(){return c.__inject__.ban(this.id)}banEx(t,i){return c.__inject__.banEx(this.id,t,i)}isAdmin(){return c.__inject__.isAdmin(this.id)}isInRangeOfPoint(t,i,a,r){return c.__inject__.isInRangeOfPoint(this.id,t,i,a,r)}isStreamedIn(t){return c.__inject__.isStreamedIn(this.id,t.id)}setSkin(t){return c.__inject__.setSkin(this.id,t)}getSkin(){return c.__inject__.getSkin(this.id)}isInAnyVehicle(){return c.__inject__.isInAnyVehicle(this.id)}getSpecialAction(){return c.__inject__.getSpecialAction(this.id)}setSpecialAction(t){return c.__inject__.setSpecialAction(this.id,t)}setScore(t){return c.__inject__.setScore(this.id,t)}getScore(){return c.__inject__.getScore(this.id)}getPing(){return c.__inject__.getPing(this.id)||0}setPos(t,i,a){return c.__inject__.setPos(this.id,t,i,a)}getPos(){return c.__inject__.getPos(this.id)}isSpectating(){return this.getState()===qe.SPECTATING}isWasted(){return this.getState()===qe.WASTED}getState(){return c.__inject__.getState(this.id)}getVersion(){return c.__inject__.getVersion(this.id)}setVirtualWorld(t){return c.__inject__.setVirtualWorld(this.id,t)}getVirtualWorld(){return c.__inject__.getVirtualWorld(this.id)}removeFromVehicle(){return c.__inject__.removeFromVehicle(this.id)}setWantedLevel(t){if(t<0||t>6)throw new Error("[Player]: player's wanted level ranges from 0 to 6");return c.__inject__.setWantedLevel(this.id,t)}getWantedLevel(){return c.__inject__.getWantedLevel(this.id)}setFacingAngle(t){return c.__inject__.setFacingAngle(this.id,t)}getFacingAngle(){return c.__inject__.getFacingAngle(this.id)}setWeather(t){return c.__inject__.setWeather(this.id,t)}getWeather(){return c.__inject__.getWeather(this.id)}setTime(t,i){return c.__inject__.setTime(this.id,t,i)}getTime(){return c.__inject__.getTime(this.id)}removeBuilding(t,i,a,r,n){return c.__inject__.removeBuilding(this.id,t,i,a,r,n)}setTeam(t){t<0||t>l.NO_TEAM||c.__inject__.setTeam(this.id,t)}getTeam(){return c.__inject__.getTeam(this.id)}setSkillLevel(t,i){if(i<0||i>999)throw new Error("[Player]: The valid skill level is only 0 to 999");return c.__inject__.setSkillLevel(this.id,t,i)}getName(){return c.__inject__.getName(this)}setName(t){return c.__inject__.setName(this,t)}setVelocity(t,i,a){return c.__inject__.setVelocity(this.id,t,i,a)}getVelocity(){return c.__inject__.getVelocity(this.id)}getSpeed(t=180){if(this.id===-1)return 0;const{x:i,y:a,z:r}=this.getVelocity();return Ct(i,a,r)*t}getKeys(){return c.__inject__.getKeys(this.id)}getIp(){return c.__inject__.getIp(this.id)}getFightingStyle(){return c.__inject__.getFightingStyle(this.id)}setFightingStyle(t){return c.__inject__.setFightingStyle(this.id,t)}setArmour(t){return c.__inject__.setArmour(this.id,t)}getArmour(){return c.__inject__.getArmour(this.id)}setCameraBehind(){return c.__inject__.setCameraBehind(this.id)}setCameraPos(t,i,a){return c.__inject__.setCameraPos(this.id,t,i,a)}setCameraLookAt(t,i,a,r=Qe.CUT){return c.__inject__.setCameraLookAt(this.id,t,i,a,r)}getCameraAspectRatio(){return c.__inject__.getCameraAspectRatio(this.id)}getCameraFrontVector(){return c.__inject__.getCameraFrontVector(this.id)}getCameraMode(){return c.__inject__.getCameraMode(this.id)}getCameraPos(){return c.__inject__.getCameraPos(this.id)}getCameraTargetPlayer(){const t=c.__inject__.getCameraTargetPlayer(this.id);return c.getInstance(t)}getCameraTargetVehicle(){const t=c.__inject__.getCameraTargetVehicle(this.id);return Ie.get(t)}getCameraTargetActor(){const t=c.__inject__.getCameraTargetActor(this.id);return He.get(t)}getCameraTargetObject(){const t=c.__inject__.getCameraTargetObject(this.id);return Te.get(t)}getCameraTargetPlayerObject(){const t=c.__inject__.getCameraTargetPlayerObject(this.id);return K.get(this)?.get(t)}getCameraZoom(){return c.__inject__.getCameraZoom(this.id)}playAudioStream(t,i=0,a=0,r=0,n=5){let s=!1;return(i!==0||a!==0||r!==0)&&(s=!0),c.__inject__.playAudioStream(this.id,t,i,a,r,n,s)}stopAudioStream(){return c.__inject__.stopAudioStream(this.id)}playSound(t,i=0,a=0,r=0){return c.__inject__.playSound(this.id,t,i,a,r)}static getMaxPlayers(){return c.__inject__.getMaxPlayers()}playCrimeReport(t,i){if(i<3||i>22)throw new Error("[Player]: Available crime ids range from 3 to 22");return c.__inject__.playCrimeReport(this.id,t.id,i)}interpolateCameraPos(t,i,a,r,n,s,o,_=Qe.CUT){return c.__inject__.interpolateCameraPos(this.id,t,i,a,r,n,s,o,_)}interpolateCameraLookAt(t,i,a,r,n,s,o,_=Qe.CUT){return c.__inject__.interpolateCameraLookAt(this.id,t,i,a,r,n,s,o,_)}createExplosion(t,i,a,r,n){if(r<0||r>13)throw new Error("[Player]: The valid explosion type value is only 0 to 13");return c.__inject__.createExplosion(this.id,t,i,a,r,n)}static isConnected(t){return c.__inject__.isConnected(t)}isConnected(){return c.isConnected(this.id)}disableRemoteVehicleCollisions(t){return c.__inject__.disableRemoteVehicleCollisions(this.id,t)}getVehicle(){if(!this.isInAnyVehicle())return;const t=c.__inject__.getVehicleID(this.id);return p.getInstance(t)}getVehicleSeat(){return c.__inject__.getVehicleSeat(this.id)}getSurfingVehicle(){const t=c.__inject__.getSurfingVehicleID(this.id);return p.getInstance(t)}applyAnimation(t,i,a=4.1,r=!1,n=!0,s=!0,o=!1,_=0,d=!1){if(!St(t,i))throw new Error(`[Player]: Invalid anim library or name ${t} ${i}`);return c.__inject__.applyAnimation(this.id,t,i,a,r,n,s,o,_,+d)}clearAnimations(t=!1){return c.__inject__.clearAnimations(this.id,t)}getAnimationIndex(){return c.__inject__.getAnimationIndex(this.id)}getAnimationName(){return H.getAnimationName(this.getAnimationIndex())}setShopName(t){return c.__inject__.setShopName(this.id,t)}setPosFindZ(t,i,a){return c.__inject__.setPosFindZ(this.id,t,i,a)}setWorldBounds(t,i,a,r){return c.__inject__.setWorldBounds(this.id,t,i,a,r)}clearWorldBounds(){return c.__inject__.clearWorldBounds(this.id)}setChatBubble(t,i,a,r,n=this.charset){return c.__inject__.setChatBubble(this.id,t,i,a,r,n)}getDistanceFromPoint(t,i,a){return c.__inject__.getDistanceFromPoint(this.id,t,i,a)}getCustomSkin(){return c.__inject__.getCustomSkin(this.id)}getTargetPlayer(){const t=c.__inject__.getTargetPlayer(this.id);return c.getInstance(t)}getLastShotVectors(){return c.__inject__.getLastShotVectors(this.id)}getWeapon(){return c.__inject__.getWeapon(this.id)}getWeaponData(t){return c.__inject__.getWeaponData(this.id,t)}getWeaponState(){return c.__inject__.getWeaponState(this.id)}giveWeapon(t,i){return c.__inject__.giveWeapon(this.id,t,i)}setAmmo(t,i){return c.__inject__.setAmmo(this.id,t,i)}getAmmo(){return c.__inject__.getAmmo(this.id)}setArmedWeapon(t){return c.__inject__.setArmedWeapon(this.id,t)}clearDeathMessage(){for(let t=0;t<5;t++)this.sendDeathMessageToPlayer(l.PLAYER_ID,l.PLAYER_ID,ft.CONNECT)}sendDeathMessage(t,i){return c.__inject__.sendDeathMessage(t===l.PLAYER_ID?t:t.id,this.id,i)}sendDeathMessageToPlayer(t,i,a){return c.__inject__.sendDeathMessageToPlayer(this.id,t===l.PLAYER_ID?t:t.id,i===l.PLAYER_ID?i:i.id,a)}setSpawnInfo(t,i,a,r,n,s,o,_,d,h,u,I){return t<0||t>l.NO_TEAM||i<0||i>311||i===74||_<0||h<0||I<0?!1:c.__inject__.setSpawnInfo(this.id,t,i,a,r,n,s,o,_,d,h,u,I)}redirectDownload(t){return c.__inject__.redirectDownload(this.id,t)}sendClientCheck(t,i,a,r){const n=[2,5,69,70,71,72];if(!n.includes(t))throw new Error(`[Player]: sendClientCheck valid types are ${n.toString()}`);return new Promise((s,o)=>{if(this.isPaused)return o("[Player]: An attempt to check player client response, but player paused game");const _="[Player]: An attempt to check player client response timed out",d=this.getPing(),h=(d>=200?0:d)+200;let u=null;const I=Mi(({player:S,actionId:y,memAddr:L,data:M,next:Q})=>(S!==this||(u&&(clearTimeout(u),u=null),s({actionId:y,memAddr:L,data:M})),Q()));u=setTimeout(()=>{I(),o(_)},h),c.__inject__.sendClientCheck(this.id,t,i,a,r)})}selectTextDraw(t){c.__inject__.selectTextDraw(this.id,t)}cancelSelectTextDraw(){c.__inject__.cancelSelectTextDraw(this.id)}beginObjectSelecting(){return c.__inject__.beginObjectSelecting(this.id)}endObjectEditing(){return c.__inject__.endObjectEditing(this.id)}getSurfingObject(){const t=c.__inject__.getSurfingObjectID(this.id);if(t!==l.OBJECT_ID)return C.getInstance(t)}getSurfingPlayerObject(){const t=c.__inject__.getSurfingPlayerObjectID(this.id);if(t!==l.OBJECT_ID)return C.getInstance(t,this)}isAttachedObjectSlotUsed(t){return c.__inject__.isAttachedObjectSlotUsed(this.id,t)}editAttachedObject(t){return c.__inject__.editAttachedObject(this.id,t)}setAttachedObject(t,i,a,r=0,n=0,s=0,o=0,_=0,d=0,h=1,u=1,I=1,S=0,y=0){return this.isAttachedObjectSlotUsed(t)?0:c.__inject__.setAttachedObject(this.id,t,i,a,r,n,s,o,_,d,h,u,I,S,y)}removeAttachedObject(t){return this.isAttachedObjectSlotUsed(t)?c.__inject__.removeAttachedObject(this.id,t):!1}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 c.__inject__.toggleWidescreen(this.id,t)}isWidescreenToggled(){return c.__inject__.isWidescreenToggled(this.id)}getSpawnInfo(){return c.__inject__.getSpawnInfo(this.id)}getSkillLevel(t){return c.__inject__.getSkillLevel(this.id,t)}isCheckpointActive(){return c.__inject__.isCheckpointActive(this.id)}getCheckpoint(){return c.__inject__.getCheckpoint(this.id)}isRaceCheckpointActive(){return c.__inject__.isRaceCheckpointActive(this.id)}getRaceCheckpoint(){return c.__inject__.getRaceCheckpoint(this.id)}getWorldBounds(){return c.__inject__.getWorldBounds(this.id)}isInModShop(){return c.__inject__.isInModShop(this.id)}getSirenState(){return c.__inject__.getSirenState(this.id)}getLandingGearState(){return c.__inject__.getLandingGearState(this.id)}getHydraReactorAngle(){return c.__inject__.getHydraReactorAngle(this.id)}getTrainSpeed(){return c.__inject__.getTrainSpeed(this.id)}getZAim(){return c.__inject__.getZAim(this.id)}getSurfingOffsets(){return c.__inject__.getSurfingOffsets(this.id)}getRotationQuat(){return c.__inject__.getRotationQuat(this.id)}getDialogID(){return c.__inject__.getDialogID(this.id)}getSpectateID(){return c.__inject__.getSpectateID(this.id)}getSpectateType(){return c.__inject__.getSpectateType(this.id)}getRawIp(){return c.__inject__.getRawIp(this.id)}setGravity(t){return c.__inject__.setGravity(this.id,t)}getGravity(){return c.__inject__.getGravity(this.id)}setAdmin(t){return c.__inject__.setAdmin(this.id,t)}isSpawned(){return c.__inject__.isSpawned(this.id)}isControllable(){return c.__inject__.isControllable(this.id)}isCameraTargetEnabled(){return c.__inject__.isCameraTargetEnabled(this.id)}toggleGhostMode(t){return c.__inject__.toggleGhostMode(this.id,t)}getGhostMode(){return c.__inject__.getGhostMode(this.id)}getBuildingsRemoved(){return c.__inject__.getBuildingsRemoved(this.id)}getAttachedObject(t){return c.__inject__.getAttachedObject(this.id,t)}removeWeapon(t){return c.__inject__.removeWeapon(this.id,t)}isUsingOfficialClient(){return c.__inject__.isUsingOfficialClient(this.id)}allowWeapons(t){return c.__inject__.allowWeapons(this.id,t)}areWeaponsAllowed(){return c.__inject__.areWeaponsAllowed(this.id)}gpci(t=this.charset){return c.__inject__.gpci(this.id,t)}isCuffed(){return c.__inject__.isCuffed(this.id)}isInDriveByMode(){return c.__inject__.isInDriveByMode(this.id)}isAndroid(){return this.isConnected()&&this[B].isAndroid}isPC(){return this.isConnected()&&!this[B].isAndroid}isUsingOmp(){return c.__inject__.isUsingOmp(this.id)}simulateCommand(t){return ae.simulate(this,t)}hasClockEnabled(){return c.__inject__.hasClockEnabled(this.id)}static getInstance(t){return ce.get(t)}static getInstances(){return[...ce.values()]}static __inject__={sendClientMessage:bi,sendClientMessageToAll:MI,sendMessageToPlayer:Li,sendMessageToAll:VI,banEx:HI,getName:BI,setName:xI,setChatBubble:$I,isNpc:Co,getDrunkLevel:Wo,setDrunkLevel:Uo,allowTeleport:ho,isTeleportAllowed:go,enableCameraTarget:dc,enableStuntBonus:x_,getInterior:Lo,setInterior:bo,showNameTag:ic,setColor:Ko,getColor:Xo,setMapIcon:ac,removeMapIcon:rc,setMarker:ec,getMarker:tc,resetMoney:e_,getMoney:t_,giveMoney:qo,resetWeapons:Jo,spawn:Pl,setHealth:wo,getHealth:Ro,toggleClock:o_,toggleControllable:w_,toggleSpectating:X_,spectatePlayer:Z_,spectateVehicle:Y_,forceClassSelection:c_,kick:Ll,ban:wl,isAdmin:vl,isInRangeOfPoint:Do,isStreamedIn:vo,setSkin:Zo,getSkin:Yo,isInAnyVehicle:$_,getSpecialAction:F_,setSpecialAction:M_,setScore:xo,getScore:Ho,getPing:a_,setPos:yo,getPos:Eo,getState:i_,getVersion:Hl,setVirtualWorld:k_,getVirtualWorld:B_,removeFromVehicle:L_,setWantedLevel:d_,getWantedLevel:h_,setFacingAngle:Ao,getFacingAngle:No,setWeather:__,getWeather:Xl,setTime:s_,getTime:l_,removeBuilding:N_,setTeam:ko,getTeam:Bo,setSkillLevel:y_,setVelocity:m_,getVelocity:f_,getKeys:n_,getIp:xl,getFightingStyle:u_,setFightingStyle:g_,setArmour:Oo,getArmour:Go,setCameraBehind:lc,setCameraPos:nc,setCameraLookAt:sc,getCameraAspectRatio:fc,getCameraFrontVector:_c,getCameraMode:cc,getCameraPos:oc,getCameraTargetPlayer:uc,getCameraTargetVehicle:gc,getCameraTargetActor:mc,getCameraTargetObject:hc,getCameraTargetPlayerObject:Kp,getCameraZoom:Pc,playAudioStream:p_,stopAudioStream:I_,playSound:R_,getMaxPlayers:ks,playCrimeReport:P_,interpolateCameraPos:Cc,interpolateCameraLookAt:yc,createExplosion:W_,isConnected:z_,disableRemoteVehicleCollisions:V_,getVehicleID:v_,getVehicleSeat:b_,getSurfingVehicleID:S_,applyAnimation:O_,clearAnimations:G_,getAnimationIndex:j_,setShopName:C_,setPosFindZ:So,setWorldBounds:Q_,clearWorldBounds:q_,getDistanceFromPoint:To,getCustomSkin:H_,getTargetPlayer:Vo,getLastShotVectors:D_,getWeapon:r_,getWeaponData:Qo,getWeaponState:Mo,giveWeapon:zo,setAmmo:jo,getAmmo:Fo,setArmedWeapon:$o,sendDeathMessage:Vs,sendDeathMessageToPlayer:po,setSpawnInfo:fl,redirectDownload:Dp,sendClientCheck:Ml,selectTextDraw:rP,cancelSelectTextDraw:nP,beginObjectSelecting:Cp,endObjectEditing:Di,getSurfingObjectID:E_,getSurfingPlayerObjectID:A_,isAttachedObjectSlotUsed:Op,editAttachedObject:sp,setAttachedObject:wp,removeAttachedObject:Rp,toggleWidescreen:Wl,isWidescreenToggled:Ul,getSpawnInfo:pl,getSkillLevel:Kl,isCheckpointActive:yi,getCheckpoint:Si,isRaceCheckpointActive:Ei,getRaceCheckpoint:Ai,getWorldBounds:Zl,isInModShop:Vu,getSirenState:ku,getLandingGearState:Bu,getHydraReactorAngle:xu,getTrainSpeed:Hu,getZAim:Yl,getSurfingOffsets:zl,getRotationQuat:Jl,getDialogID:$l,getSpectateID:Ql,getSpectateType:ql,getRawIp:Bl,setGravity:eo,getGravity:to,setAdmin:bl,isSpawned:io,isControllable:ao,isCameraTargetEnabled:ro,toggleGhostMode:no,getGhostMode:so,getBuildingsRemoved:lo,getAttachedObject:Lp,removeWeapon:oo,isUsingOfficialClient:co,allowWeapons:uo,areWeaponsAllowed:mo,gpci:Fl,isCuffed:Sc,isInDriveByMode:Ec,isUsingOmp:Ac,hasClockEnabled:Nc}}const[Vi]=m({name:"OnDialogResponseI18n",identifier:"iiiiai",defaultValue:!1,beforeEach(e,t,i,a,r){const n=c.getInstance(e),s=E.decodeFromBuf(r,n.charset);return{player:n,dialogId:t,response:i,listItem:a,buffer:r,inputText:s}}});Vi(({next:e,player:t,dialogId:i,response:a,listItem:r,buffer:n,inputText:s})=>{const o=U.waitingQueue.get(t);return!o||o.showId!==i||o.resolve({response:a,listItem:r,buffer:n,inputText:s}),e()});class U{_id=-1;static showingIds=[];static maxDialogId=32767;dialog;static waitingQueue=new WeakMap;constructor(t={style:gt.MSGBOX,caption:"",info:"",button1:"",button2:""}){this.dialog=t}get style(){return this.dialog.style}set style(t){this.dialog.style=t}get caption(){return this.dialog.caption}set caption(t){this.dialog.caption=t}get info(){return this.dialog.info}set info(t){this.dialog.info=t}get button1(){return this.dialog.button1}set button1(t){this.dialog.button1=t}get button2(){return this.dialog.button2}set button2(t){this.dialog.button2=t}static delDialogTask(t,i=!1){const a=U.waitingQueue.get(t);if(!a)return!1;i&&a.reject("[Dialog]: player timeout does not respond or second request show dialog"),U.waitingQueue.delete(t);const r=U.showingIds.indexOf(a.showId);return r>-1&&U.showingIds.splice(r,1),!0}show(t){return new Promise((i,a)=>{for(U.close(t);this._id===-1||U.showingIds.includes(this._id);){if(U.showingIds.length>=U.maxDialogId){this._id=-1;break}this._id=Math.floor(Math.random()*(U.maxDialogId+1))}if(this._id===-1){a("[Dialog]: Cannot create dialog");return}U.showingIds.push(this._id),U.waitingQueue.set(t,{resolve:i,reject:a,showId:this._id}),U.__inject__.show(t,this._id,this.dialog)}).catch(i=>Promise.reject(i)).finally(()=>U.delDialogTask(t))}static close(t){U.delDialogTask(t,!0),U.__inject__.hide(t.id)}static __inject__={show:kI,hide:_o}}const[ki]=m({name:"OnPlayerConnect",identifier:"i",beforeEach(e){const t=new c(e);return ce.set(e,t),U.close(t),{player:t}}}),[Bi]=m({name:"OnPlayerDisconnect",identifier:"ii",beforeEach(e,t){return{player:ce.get(e),reason:t}},afterEach({player:e}){ce.delete(e.id)}}),[xi]=m({name:"OnPlayerUpdate",identifier:"i",beforeEach(e){return{player:c.getInstance(e)}}}),[MC]=m({name:"OnPlayerTextI18n",identifier:"iai",beforeEach(e,t){const i=c.getInstance(e);return{player:i,text:E.decodeFromBuf(t,i.charset),buffer:t}}}),[VC]=m({name:"OnPlayerEnterExitModShop",identifier:"iii",beforeEach(e,t,i){return{player:c.getInstance(e),enterExit:t,interior:i}}}),[kC]=m({name:"OnPlayerClickMap",identifier:"ifff",defaultValue:!1,beforeEach(e,t,i,a){return{player:c.getInstance(e),fX:t,fY:i,fZ:a}}}),[BC]=m({name:"OnPlayerClickPlayer",identifier:"iii",defaultValue:!1,beforeEach(e,t,i){return{player:c.getInstance(e),clickedPlayer:c.getInstance(t),source:i}}}),[xC]=m({name:"OnPlayerDeath",identifier:"iii",beforeEach(e,t,i){const a=c.getInstance(t)||l.PLAYER_ID;return{player:c.getInstance(e),killer:a,reason:i}}}),[HC]=m({name:"OnPlayerGiveDamage",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,r){return{player:c.getInstance(e),damage:c.getInstance(t),amount:i,weapon:a,bodyPart:r}}}),[WC]=m({name:"OnPlayerKeyStateChange",identifier:"iii",beforeEach(e,t,i){return{player:c.getInstance(e),newKeys:t,oldKeys:i}}}),[UC]=m({name:"OnPlayerRequestClass",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),classId:t}}}),[KC]=m({name:"OnPlayerRequestSpawn",identifier:"i",beforeEach(e){return{player:c.getInstance(e)}}}),[XC]=m({name:"OnPlayerSpawn",identifier:"i",beforeEach(e){return{player:c.getInstance(e)}}}),[ZC]=m({name:"OnPlayerStateChange",identifier:"iii",beforeEach(e,t,i){return{player:c.getInstance(e),newState:t,oldState:i}}}),[YC]=m({name:"OnPlayerStreamIn",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),forPlayer:c.getInstance(t)}}}),[zC]=m({name:"OnPlayerStreamOut",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),forPlayer:c.getInstance(t)}}}),[JC]=m({name:"OnPlayerTakeDamage",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,r){const n=c.getInstance(t)||l.PLAYER_ID;return{player:c.getInstance(e),damage:n,amount:i,weapon:a,bodyPart:r}}}),[$C]=m({name:"OnPlayerInteriorChange",identifier:"iii",beforeEach(e,t,i){return{player:c.getInstance(e),newInteriorId:t,oldInteriorId:i}}}),[QC]=m({name:"OnPlayerRequestDownload",identifier:"iii",beforeEach(e,t,i){return{player:c.getInstance(e),type:t,crc:i}}}),[qC]=m({name:"OnPlayerFinishedDownloading",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),virtualWorld:t}}}),[ey]=m({name:"OnPlayerWeaponShot",identifier:"iiiifff",beforeEach(e,t,i,a,r,n,s){return{player:c.getInstance(e),weapon:t,hitType:i,hitId:a,fX:r,fY:n,fZ:s}}});let rt=null;const te=new Map,Xe=new Map;function Hi(e){if(!e.isConnected()){te.has(e)&&(clearInterval(te.get(e)),te.delete(e),Xe.delete(e));return}let t=Xe.get(e)||1;if(t>=c.MAX_CHECK_ANDROID_DELAY){clearInterval(te.get(e)),te.delete(e),Xe.delete(e),Nt(e,!0);return}e.sendClientCheck(72,0,0,2).then(({actionId:i})=>{i===72&&(e[B].isAndroid=!1,te.has(e)&&(clearInterval(te.get(e)),te.delete(e),Xe.delete(e)),Nt(e,!1))}).catch(()=>{}),t++,Xe.set(e,t)}const[ty,iy]=m({name:"OnPlayerPause",isNative:!1,beforeEach(e,t){return{player:e,pausedAt:t}}}),[ay,ry]=m({name:"OnPlayerResume",isNative:!1,beforeEach(e,t,i,a){return{player:e,pausedAt:t,now:i,diff:a}}}),[ny,sy]=m({name:"OnPlayerFpsUpdate",isNative:!1,beforeEach(e,t,i){return{player:e,newFps:t,oldFps:i}}}),[ly,Nt]=m({name:"OnAndroidCheck",isNative:!1,beforeEach(e,t){return{player:e,result:t}}});ki(({player:e,next:t})=>{if(!rt&&c.getInstances().length&&(rt=setInterval(()=>{c.getInstances().filter(a=>{const r=a.getState()!==qe.NONE;return!a.isPaused&&!a.isNpc()&&r}).forEach(a=>{Date.now()-a.lastUpdateTick>1e3&&(a[B].isPaused=!0,iy(a,a.lastUpdateTick))})},500)),e.isNpc())return e[B].isAndroid=!1,t();if(c.SKIP_CHECK_ANDROID)return e[B].isAndroid=!e.isUsingOfficialClient(),Nt(e,e[B].isAndroid),t();Hi(e);const i=setInterval(()=>Hi(e),1e3);return te.set(e,i),t()}),Bi(({player:e,next:t})=>(rt&&c.getInstances().length<=1&&(clearInterval(rt),rt=null),te.has(e)&&(clearInterval(te.get(e)),te.delete(e),Xe.delete(e)),t()));function oy(e){if(!c.isConnected(e.id))return;const t=Date.now();if(t-e.lastUpdateFpsTick>=1e3){const i=e.getDrunkLevel();if(i<100){e.setDrunkLevel(2e3),e[B].lastDrunkLevel=2e3,e[B].lastFps=0;return}e[B].lastUpdateFpsTick=t;const a=e.lastFps,r=e.lastDrunkLevel-i-1;e[B].lastFps=r,e[B].lastDrunkLevel=i,sy(e,r,a)}}xi(({player:e,next:t})=>{if(!e.isNpc()){const i=Date.now();e.isPaused&&(e[B].isPaused=!1,ry(e,e.lastUpdateTick,i,i-e.lastUpdateTick)),e[B].lastUpdateTick=i,oy(e)}return t()});const Ze=Object.freeze({onConnect:ki,onDisconnect:Bi,onPause:ty,onResume:ay,onUpdate:xi,onText:MC,onEnterExitModShop:VC,onClickMap:kC,onClickPlayer:BC,onDeath:xC,onGiveDamage:HC,onKeyStateChange:WC,onRequestClass:UC,onRequestSpawn:KC,onSpawn:XC,onStateChange:ZC,onStreamIn:YC,onStreamOut:zC,onTakeDamage:JC,onInteriorChange:$C,onRequestDownload:QC,onFinishedDownloading:qC,onCheckResponse:Mi,onCommandReceived:SC,onCommandPerformed:AC,onCommandError:DC,onCommandText:ae.on,offCommandText:ae.off,onDialogResponse:Vi,onLocaleChange:OC,onCharsetChange:jC,onFpsUpdate:ny,onWeaponShot:ey,onAndroidCheck:ly,onCommandTextRaw:bC});H.onExit(({next:e})=>(p.getInstances().forEach(t=>t.destroy()),Ie.clear(),e()));const[_y]=m({name:"OnVehicleDamageStatusUpdate",identifier:"ii",defaultValue:!1,beforeEach(e,t){return{vehicle:p.getInstance(e),player:c.getInstance(t)}}}),[cy]=m({name:"OnVehicleDeath",identifier:"ii",beforeEach(e,t){return{vehicle:p.getInstance(e),killer:c.getInstance(t)}}}),[dy]=m({name:"OnVehicleMod",identifier:"iii",beforeEach(e,t,i){return{player:c.getInstance(e),vehicle:p.getInstance(t),componentId:i}}}),[hy]=m({name:"OnVehiclePaintjob",identifier:"iii",beforeEach(e,t,i){return{player:c.getInstance(e),vehicle:p.getInstance(t),paintjobId:i}}}),[gy]=m({name:"OnVehicleRespray",identifier:"iiii",beforeEach(e,t,i,a){return{player:c.getInstance(e),vehicle:p.getInstance(t),color:[i,a]}}}),[uy]=m({name:"OnVehicleSirenStateChange",identifier:"iii",defaultValue:!1,beforeEach(e,t,i){return{player:c.getInstance(e),vehicle:p.getInstance(t),state:!!i}}}),[my]=m({name:"OnVehicleSpawn",identifier:"i",beforeEach(e){return{vehicle:p.getInstance(e)}}}),[fy]=m({name:"OnVehicleStreamIn",identifier:"ii",beforeEach(e,t){return{vehicle:p.getInstance(e),forPlayer:c.getInstance(t)}}}),[Py]=m({name:"OnVehicleStreamOut",identifier:"ii",beforeEach(e,t){return{vehicle:p.getInstance(e),forPlayer:c.getInstance(t)}}}),[py]=m({name:"OnPlayerEnterVehicle",identifier:"iii",beforeEach(e,t,i){return{player:c.getInstance(e),vehicle:p.getInstance(t),isPassenger:!!i}}}),[Iy]=m({name:"OnPlayerExitVehicle",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),vehicle:p.getInstance(t)}}}),[Cy]=m({name:"OnTrailerUpdate",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),vehicle:p.getInstance(t)}}}),[yy]=m({name:"OnUnoccupiedVehicleUpdate",identifier:"iiiffffff",beforeEach(e,t,i,a,r,n,s,o,_){return{vehicle:p.getInstance(e),player:c.getInstance(t),passengerSeat:i,newX:a,newY:r,newZ:n,velX:s,velY:o,velZ:_}}}),Sy=Object.freeze({onDamageStatusUpdate:_y,onDeath:cy,onMod:dy,onPaintjob:hy,onRespray:gy,onSirenStateChange:uy,onSpawn:my,onStreamIn:fy,onStreamOut:Py,onPlayerEnter:py,onPlayerExit:Iy,onTrailerUpdate:Cy,onUnoccupiedUpdate:yy}),[we]=m({name:"Streamer_OnItemStreamIn",identifier:"iii",beforeEach(e,t,i){return{type:e,id:t,forPlayer:c.getInstance(i)}}}),[Re]=m({name:"Streamer_OnItemStreamOut",identifier:"iii",beforeEach(e,t,i){return{type:e,id:t,forPlayer:c.getInstance(i)}}}),[Ey]=m({name:"Streamer_OnPluginError",identifier:"s",beforeEach(e){return{error:e}}});class A{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getTickRate=Cn;static setTickRate=yn;static getPlayerTickRate(t){return Sn(t.id)}static setPlayerTickRate(t,i=50){return En(t.id,i)}static toggleChunkStream=An;static isToggleChunkStream=Nn;static getChunkTickRate(t,i=-1){return i instanceof c?oi(t,i.id):oi(t,i)}static setChunkTickRate(t,i,a=-1){return a instanceof c?_i(t,i,a.id):_i(t,i,a)}static getChunkSize=Dn;static setChunkSize=Tn;static getMaxItems=vn;static setMaxItems=bn;static getVisibleItems(t,i=-1){return i instanceof c?ci(t,i.id):ci(t,i)}static setVisibleItems(t,i,a=-1){return a instanceof c?di(t,i,a.id):di(t,i,a)}static getRadiusMultiplier(t,i=-1){return i instanceof c?hi(t,i.id):hi(t,i)}static setRadiusMultiplier(t,i,a=-1){return a instanceof c?gi(t,i,a.id):gi(t,i,a)}static getTypePriority=Ln;static setTypePriority=wn;static getCellDistance=Rn;static setCellDistance=On;static getCellSize=Gn;static setCellSize=jn;static toggleItemStatic=Fn;static isToggleItemStatic=Mn;static toggleItemInvAreas=Vn;static isToggleItemInvAreas=kn;static toggleItemCallbacks=Bn;static isToggleItemCallbacks=xn;static toggleErrorCallback=Hn;static isToggleErrorCallback=Wn;static amxUnloadDestroyItems=Un;static processActiveItems=Kn;static toggleIdleUpdate(t,i){return Xn(t.id,i)}static isToggleIdleUpdate(t){return Zn(t.id)}static toggleCameraUpdate(t,i){return Yn(t.id,i)}static isToggleCameraUpdate(t){return zn(t.id)}static toggleItemUpdate(t,i,a){return Jn(t.id,i,a)}static isToggleItemUpdate(t,i){return $n(t.id,i)}static getLastUpdateTime(){return Qn()}static update(t,i=-1){return qn(t.id,i)}static updateEx(t,i,a,r,n,s,o,_,d){return es(t.id,i,a,r,n,s,o,_,d)}static getDistanceToItem=Ar;static toggleItem(t,i,a,r){return Nr(t.id,i,a,r)}static isToggleItem(t,i,a){return Dr(t.id,i,a)}static toggleAllItems(t,i,a,r=[-1]){return Tr(t.id,i,a,r)}static getItemInternalID(t,i,a){return vr(t.id,i,a)}static getItemStreamerID(t,i,a){return br(t.id,i,a)}static isItemVisible(t,i,a){return Lr(t.id,i,a)}static destroyAllVisibleItems(t,i,a=1){return wr(t.id,i,a)}static countVisibleItems(t,i,a=1){return Rr(t.id,i,a)}static destroyAllItems=Or;static countItems=Gr;static getNearbyItems=jr;static getAllVisibleItems(t,i,a){return Fr(t.id,i,a)}static getItemPos=Mr;static setItemPos=Vr;static getItemOffset=kr;static setItemOffset=Br;static getFloatData=qa;static setFloatData=er;static getIntData=tr;static setIntData=ir;static getArrayData=ar;static setArrayData=rr;static isInArrayData=nr;static appendArrayData=sr;static removeArrayData=lr;static getArrayDataLength=li;static getUpperBound=or;static onPluginError=Ey}class O{sourceInfo=null;_id=P.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){const i=O.getInstance(t);if(i)return i;this._id=t,Se.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==P.INVALID_ID)throw new Error("[StreamerObject]: Cannot create again");if(!this.sourceInfo)throw new Error("[StreamerObject]: Cannot create with only id");let{streamDistance:t,drawDistance:i,worldId:a,interiorId:r,playerId:n,areaId:s,priority:o}=this.sourceInfo;const{modelId:_,x:d,y:h,z:u,rx:I,ry:S,rz:y,extended:L}=this.sourceInfo;return t??=k.OBJECT_SD,i??=k.OBJECT_DD,o??=0,L?(typeof a=="number"?a=[-1]:a??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof s=="number"?s=[-1]:s??=[-1],this._id=O.__inject__.createEx(_,d,h,u,I,S,y,t,i,a,r,n,s,o)):(Array.isArray(a)?a=-1:a??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(s)?s=-1:s??=-1,this._id=O.__inject__.create(_,d,h,u,I,S,y,a,r,n,t,i,s,o)),Se.set(this._id,this),this}destroy(){if(this.id===P.INVALID_ID&&!D.skip)throw new Error("[StreamerObject]: Cannot destroy object before create");return D.skip||O.__inject__.destroy(this.id),Se.delete(this.id),this._id=P.INVALID_ID,this}isValid(){return D.skip&&this.id!==P.INVALID_ID?!0:O.isValid(this.id)}getModel(){return this.sourceInfo?this.sourceInfo.modelId:A.getIntData(T.OBJECT,this._id,_e.MODEL_ID)}getPos(){if(this.id===P.INVALID_ID)throw new Error("[StreamerObject]: Cannot get position before create");return O.__inject__.getPos(this.id)}setPos(t,i,a){if(this.id===P.INVALID_ID)throw new Error("[StreamerObject]: Cannot set position before create");return O.__inject__.setPos(this.id,t,i,a)}getRot(){if(this.id===P.INVALID_ID)throw new Error("[StreamerObject]: Cannot get rotation before create");return O.__inject__.getRot(this.id)}setRot(t,i,a){if(this.id===P.INVALID_ID)throw new Error("[StreamerObject]: Cannot set rotation before create");return O.__inject__.setRot(this.id,t,i,a)}move(t,i,a,r,n=-1e3,s=-1e3,o=-1e3){if(this.id===P.INVALID_ID)throw new Error("[StreamerObject]: Cannot start moving before create");if(r<0)throw new Error("[StreamerObject]: speed must not be less than 0");if(r>120*1e3)throw new Error("[StreamerObject]: speed more than 120 seconds, warn if it's not intentional");return this.isMoving()&&this.stop(),O.__inject__.move(this.id,t,i,a,r,n,s,o)}stop(){if(this.id===P.INVALID_ID)throw new Error("[StreamerObject]: Cannot stop moving before create");return O.__inject__.stop(this.id)}isMoving(){return this.id===P.INVALID_ID?!1:O.__inject__.isMoving(this.id)}attachCamera(t){if(this.id===P.INVALID_ID||t.id===l.PLAYER_ID)throw new Error("[StreamerObject]: Cannot attachCamera before both are created");return O.__inject__.attachCamera(t.id,this.id)}attachToObject(t,i,a,r,n,s,o,_=!0){if(this.id===P.INVALID_ID||t.id===P.INVALID_ID)throw new Error("[StreamerObject]: Cannot attachToObject before both are created");return O.__inject__.attachToObject(this.id,t.id,i,a,r,n,s,o,_)}attachToPlayer(t,i,a,r,n,s,o){if(this.id===P.INVALID_ID||t.id===l.PLAYER_ID)throw new Error("[StreamerObject]: Cannot attachToPlayer before both are created");return O.__inject__.attachToPlayer(this.id,t.id,i,a,r,n,s,o)}attachToVehicle(t,i,a,r,n,s,o){if(this.id===P.INVALID_ID||t.id===l.VEHICLE_ID)throw new Error("[StreamerObject]: Cannot attachToVehicle before both are created");return O.__inject__.attachToVehicle(this.id,t.id,i,a,r,n,s,o)}edit(t){if(this.id===P.INVALID_ID)throw new Error("[StreamerObject]: Cannot edit before create");return t.endObjectEditing(),O.__inject__.edit(t.id,this.id)}isMaterialUsed(t){return this.id===P.INVALID_ID?!1:O.__inject__.isMaterialUsed(this.id,t)}removeMaterial(t){return this.id===P.INVALID_ID||!this.isMaterialUsed(t)?0:O.__inject__.removeMaterial(this.id,t)}getMaterial(t){if(this.id===P.INVALID_ID)throw new Error("[StreamerObject]: Cannot get material before create");return O.__inject__.getMaterial(this.id,t)}setMaterial(t,i,a,r,n="#000"){if(this.id===P.INVALID_ID)throw new Error("[StreamerObject]: Cannot set material before create");return O.__inject__.setMaterial(this.id,t,i,a,r,N(n))}isMaterialTextUsed(t){return this.id===P.INVALID_ID?!1:O.__inject__.isMaterialTextUsed(this.id,t)}removeMaterialText(t){return this.id===P.INVALID_ID||!this.isMaterialTextUsed(t)?0:O.__inject__.removeMaterialText(this.id,t)}getMaterialText(t){if(this.id===P.INVALID_ID)throw new Error("[StreamerObject]: Cannot get material text before create");return O.__inject__.getMaterialText(this.id,t,this.sourceInfo?.charset||"utf8")}setMaterialText(t=this.sourceInfo?.charset,i,a,r=ot.SIZE_256x128,n="Arial",s=24,o=1,_="#fff",d="#000",h=0){if(this.id===P.INVALID_ID)throw new Error("[StreamerObject]: Cannot set material text before create");return this.sourceInfo&&(this.sourceInfo.charset=t),O.__inject__.setMaterialText(t||"utf8",this.id,i,a,r,n,s,o,N(_),N(d),h)}getPlayerCameraTarget(t){const i=O.__inject__.getPlayerCameraTarget(t.id);if(i!==P.INVALID_ID)return Se.get(i)}toggleCallbacks(t=!0){if(this.id===P.INVALID_ID)throw new Error("[StreamerObject]: Cannot toggle callbacks before create");return A.toggleItemCallbacks(T.OBJECT,this.id,t)}isToggleCallbacks(){return this.id===P.INVALID_ID?!1:A.isToggleItemCallbacks(T.OBJECT,this.id)}setNoCameraCollision(){return O.__inject__.setNoCameraCol(this.id)}getNoCameraCollision(){return O.__inject__.getNoCameraCol(this.id)}static isValid=Wr;static togglePlayerUpdate(t,i=!0){return A.toggleItemUpdate(t,T.OBJECT,i)}static hideForPlayer(t,i=-5e4){return A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?A.updateEx(t,a.x,a.y,a.z):A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return Se.get(t)}static getInstances(){return[...Se.values()]}static __inject__={createEx:hr,create:xr,destroy:Hr,getPos:Ur,setPos:Kr,getRot:Xr,setRot:Zr,move:Yr,stop:zr,isMoving:Jr,attachCamera:$r,attachToObject:Qr,attachToPlayer:qr,attachToVehicle:en,edit:tn,isMaterialUsed:an,removeMaterial:rn,getMaterial:zI,setMaterial:nn,isMaterialTextUsed:sn,removeMaterialText:ln,getMaterialText:JI,setMaterialText:YI,getPlayerCameraTarget:on,setNoCameraCol:_n,getNoCameraCol:cn}}H.onExit(({next:e})=>(O.getInstances().forEach(t=>t.destroy()),Se.clear(),e()));const[Ay,Ny]=m({name:"OnDynamicObjectStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Dy,Ty]=m({name:"OnDynamicObjectStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});we(({type:e,id:t,forPlayer:i,next:a})=>e===T.OBJECT?Ny(i,O.getInstance(t)):a()),Re(({type:e,id:t,forPlayer:i,next:a})=>e===T.OBJECT?Ty(i,O.getInstance(t)):a());const[vy]=m({name:"OnDynamicObjectMoved",identifier:"i",beforeEach(e){return{object:O.getInstance(e)}}}),[by]=m({name:"OnPlayerEditDynamicObject",identifier:"iiiffffff",defaultValue:!1,beforeEach(e,t,i,a,r,n,s,o,_){return{player:c.getInstance(e),object:O.getInstance(t),response:i,x:a,y:r,z:n,rX:s,rY:o,rZ:_}}}),[Ly]=m({name:"OnPlayerSelectDynamicObject",identifier:"iiifff",beforeEach(e,t,i,a,r,n){return{player:c.getInstance(e),object:O.getInstance(t),modelId:i,x:a,y:r,z:n}}}),[wy]=m({name:"OnPlayerShootDynamicObject",identifier:"iiifff",beforeEach(e,t,i,a,r,n){return{player:c.getInstance(e),object:O.getInstance(i),weapon:t,x:a,y:r,z:n}}}),Ry=Object.freeze({onMoved:vy,onPlayerEdit:by,onPlayerSelect:Ly,onPlayerShoot:wy,onStreamIn:Ay,onStreamOut:Dy});class le{sourceInfo=null;_id=P.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){if(t===P.INVALID_ID)throw new Error("[StreamerMapIcon]: Invalid id");const i=le.getInstance(t);if(i)return i;this._id=t,Ne.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==P.INVALID_ID)throw new Error("[StreamerMapIcon]: Cannot create again");if(!this.sourceInfo)throw new Error("[StreamerMapIcon]: Cannot create with only id");let{style:t,streamDistance:i,worldId:a,interiorId:r,playerId:n,areaId:s,priority:o}=this.sourceInfo;const{x:_,y:d,z:h,type:u,color:I,extended:S}=this.sourceInfo;if(u<0||u>63)throw new Error("[StreamerMapIcon]: Invalid map icon type");return t??=ct.LOCAL,i??=k.MAP_ICON_SD,o??=0,S?(typeof a=="number"?a=[-1]:a??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof n=="number"?n=[-1]:n??=[-1],typeof s=="number"?s=[-1]:s??=[-1],this._id=le.__inject__.createEx(_,d,h,u,N(I),t,i,a,r,n,s,o),Ne.set(this._id,this),this):(Array.isArray(a)?a=-1:a??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(s)?s=-1:s??=-1,this._id=le.__inject__.create(_,d,h,u,N(I),a,r,n,i,t,s,o),Ne.set(this._id,this),this)}destroy(){if(this.id===P.INVALID_ID&&!D.skip)throw new Error("[StreamerMapIcon]: Cannot destroy the map icon before create");return D.skip||le.__inject__.destroy(this.id),Ne.delete(this._id),this._id=P.INVALID_ID,this}isValid(){return D.skip&&this.id!==P.INVALID_ID?!0:le.isValid(this.id)}toggleCallbacks(t=!0){if(this.id===P.INVALID_ID)throw new Error("[StreamerMapIcon]: Cannot toggle callbacks before create");return A.toggleItemCallbacks(T.MAP_ICON,this.id,t)}isToggleCallbacks(){return this.id===P.INVALID_ID?!1:A.isToggleItemCallbacks(T.MAP_ICON,this.id)}static isValid=dr;static togglePlayerUpdate(t,i=!0){return A.toggleItemUpdate(t,T.MAP_ICON,i)}static hideForPlayer(t,i=-5e4){return A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?A.updateEx(t,a.x,a.y,a.z):A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return Ne.get(t)}static getInstances(){return[...Ne.values()]}static __inject__={createEx:fr,create:_r,destroy:cr}}H.onExit(({next:e})=>(le.getInstances().forEach(t=>t.destroy()),Ne.clear(),e()));const[Oy,Gy]=m({name:"OnDynamicMapIconStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[jy,Fy]=m({name:"OnDynamicMapIconStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});we(({type:e,id:t,forPlayer:i,next:a})=>e===T.MAP_ICON?Gy(i,le.getInstance(t)):a()),Re(({type:e,id:t,forPlayer:i,next:a})=>e===T.MAP_ICON?Fy(i,le.getInstance(t)):a());const My=Object.freeze({onStreamIn:Oy,onStreamOut:jy});class re{sourceInfo=null;_id=P.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){if(t===P.INVALID_ID)throw new Error("[StreamerPickup]: Invalid id");const i=re.getInstance(t);if(i)return i;this._id=t,xe.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==P.INVALID_ID)throw new Error("[StreamerPickup]: Cannot create again");if(!this.sourceInfo)throw new Error("[StreamerPickup]: Cannot create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:r,areaId:n,priority:s}=this.sourceInfo;const{type:o,modelId:_,x:d,y:h,z:u,extended:I}=this.sourceInfo;if(o<0)throw new Error("[StreamerPickup]: Invalid pickup type");return t??=k.PICKUP_SD,s??=0,I?(typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof n=="number"?n=[-1]:n??=[-1],this._id=re.__inject__.createEx(_,o,d,h,u,t,i,a,r,n,s)):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(n)?n=-1:n??=-1,this._id=re.__inject__.create(_,o,d,h,u,i,a,r,t,n,s)),xe.set(this._id,this),this}destroy(){if(this.id===P.INVALID_ID&&!D.skip)throw new Error("[StreamerPickup]: Cannot destroy pickup before create");return D.skip||re.__inject__.destroy(this.id),xe.delete(this.id),this._id=P.INVALID_ID,this}isValid(){return D.skip&&this.id!==P.INVALID_ID?!0:re.isValid(this.id)}toggleCallbacks(t=!0){if(this.id===P.INVALID_ID)throw new Error("[StreamerPickup]: Cannot toggle callbacks before create");return A.toggleItemCallbacks(T.PICKUP,this.id,t)}isToggleCallbacks(){return this.id===P.INVALID_ID?!1:A.isToggleItemCallbacks(T.PICKUP,this.id)}static isValid=gn;static togglePlayerUpdate(t,i=!0){return A.toggleItemUpdate(t,T.PICKUP,i)}static hideForPlayer(t,i=-5e4){return A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?A.updateEx(t,a.x,a.y,a.z):A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return xe.get(t)}static getInstances(){return[...xe.values()]}static __inject__={create:dn,createEx:gr,destroy:hn}}H.onExit(({next:e})=>(re.getInstances().forEach(t=>t.destroy()),xe.clear(),e()));const[Vy,ky]=m({name:"OnDynamicPickupStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[By,xy]=m({name:"OnDynamicPickupStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});we(({type:e,id:t,next:i})=>e===T.PICKUP?ky(l.PLAYER_ID,re.getInstance(t)):i()),Re(({type:e,id:t,next:i})=>e===T.PICKUP?xy(l.PLAYER_ID,re.getInstance(t)):i());const[Hy]=m({name:"OnPlayerPickUpDynamicPickup",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),pickup:re.getInstance(t)}}}),Wy=Object.freeze({onPlayerPickUp:Hy,onStreamIn:Vy,onStreamOut:By});class X{sourceInfo=null;_id=P.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){if(t===P.INVALID_ID)throw new Error("[StreamerCheckpoint]: Invalid id");const i=X.getInstance(t);if(i)return i;this._id=t,Ae.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==P.INVALID_ID)throw new Error("[StreamerCheckpoint]: Cannot create again");if(!this.sourceInfo)throw new Error("[StreamerCheckpoint]: Cannot create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:r,areaId:n,priority:s}=this.sourceInfo;const{size:o,x:_,y:d,z:h,extended:u}=this.sourceInfo;if(o<0)throw new Error("[StreamerCheckpoint]: Invalid checkpoint size");return t??=k.CP_SD,s??=0,u?(typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof n=="number"?n=[-1]:n??=[-1],this._id=X.__inject__.createEx(_,d,h,o,t,i,a,r,n,s)):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(n)?n=-1:n??=-1,this._id=X.__inject__.create(_,d,h,o,i,a,r,t,n,s)),Ae.set(this._id,this),this}destroy(){if(this.id===P.INVALID_ID&&!D.skip)throw new Error("[StreamerCheckpoint]: Cannot destroy the checkpoint before create");return D.skip||X.__inject__.destroy(this.id),Ae.delete(this.id),this._id=P.INVALID_ID,this}isValid(){return D.skip&&this.id!==P.INVALID_ID?!0:X.isValid(this.id)}togglePlayer(t,i){if(this.id===P.INVALID_ID)throw new Error("[StreamerCheckpoint]: Cannot toggle the player before create");return X.__inject__.togglePlayer(t.id,this.id,i),this}isPlayerIn(t){return this.id===P.INVALID_ID?!1:X.__inject__.isPlayerIn(t.id,this.id)}toggleCallbacks(t=!0){if(this.id===P.INVALID_ID)throw new Error("[StreamerCheckpoint]: Cannot toggle callbacks before create");return A.toggleItemCallbacks(T.CP,this.id,t)}isToggleCallbacks(){return this.id===P.INVALID_ID?!1:A.isToggleItemCallbacks(T.CP,this.id)}static isValid=Pt;static togglePlayerAll(t,i){return X.__inject__.togglePlayerAll(t.id,i)}static getPlayerVisible(t){return Ae.get(X.__inject__.getPlayerVisible(t.id))}static togglePlayerUpdate(t,i=!0){return A.toggleItemUpdate(t,T.CP,i)}static hideForPlayer(t,i=-5e4){return A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?A.updateEx(t,a.x,a.y,a.z):A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return Ae.get(t)}static getInstances(){return[...Ae.values()]}static __inject__={create:Za,createEx:ur,destroy:Ya,getPlayerVisible:Qa,isPlayerIn:$a,togglePlayerAll:Ja,togglePlayer:za}}H.onExit(({next:e})=>(X.getInstances().forEach(t=>t.destroy()),Ae.clear(),e()));const[Uy,Ky]=m({name:"OnDynamicCheckPointStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Xy,Zy]=m({name:"OnDynamicCheckPointStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});we(({type:e,id:t,forPlayer:i,next:a})=>e===T.CP?Ky(i,X.getInstance(t)):a()),Re(({type:e,id:t,forPlayer:i,next:a})=>e===T.CP?Zy(i,X.getInstance(t)):a());const[Yy]=m({name:"OnPlayerEnterDynamicCP",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),cp:X.getInstance(t)}}}),[zy]=m({name:"OnPlayerLeaveDynamicCP",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),cp:X.getInstance(t)}}}),Jy=Object.freeze({onPlayerEnter:Yy,onPlayerLeave:zy,onStreamIn:Uy,onStreamOut:Xy});class Z{sourceInfo=null;_id=P.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){if(t===P.INVALID_ID)throw new Error("[StreamerRaceCP]: Invalid id");const i=Z.getInstance(t);if(i)return i;this._id=t,De.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==P.INVALID_ID)throw new Error("[StreamerRaceCP]: Cannot create again");if(!this.sourceInfo)throw new Error("[StreamerRaceCP]: Cannot create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:r,areaId:n,priority:s}=this.sourceInfo;const{type:o,size:_,x:d,y:h,z:u,nextX:I,nextY:S,nextZ:y,extended:L}=this.sourceInfo;if(o<0||o>8)throw new Error("[StreamerRaceCP]: Invalid type");if(_<0)throw new Error("[StreamerRaceCP]: Invalid size");return t??=k.RACE_CP_SD,s??=0,L?(typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof n=="number"?n=[-1]:n??=[-1],this._id=Z.__inject__.createEx(o,d,h,u,I,S,y,_,t,i,a,r,n,s)):(Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(n)?n=-1:n??=-1,this._id=Z.__inject__.create(o,d,h,u,I,S,y,_,i,a,r,t,n,s)),De.set(this._id,this),this}destroy(){if(this.id===P.INVALID_ID&&!D.skip)throw new Error("[StreamerRaceCP]: Cannot destroy the checkpoint before create");return D.skip||Z.__inject__.destroy(this.id),De.delete(this.id),this._id=P.INVALID_ID,this}isValid(){return D.skip&&this.id!==P.INVALID_ID?!0:Z.isValid(this.id)}togglePlayer(t,i){if(this.id===P.INVALID_ID)throw new Error("[StreamerRaceCP]: Cannot toggle player before create");return Z.__inject__.togglePlayer(t.id,this.id,i),this}static togglePlayerAll(t,i){return Z.__inject__.togglePlayerAll(t.id,i)}isPlayerIn(t){return this.id===P.INVALID_ID?!1:Z.__inject__.isPlayerIn(t.id,this.id)}static getPlayerVisible(t){return De.get(Z.__inject__.getPlayerVisible(t.id))}toggleCallbacks(t=!0){if(this.id===P.INVALID_ID)throw new Error("[StreamerRaceCP]: Cannot toggle callbacks before create");return A.toggleItemCallbacks(T.RACE_CP,this.id,t)}isToggleCallbacks(){return this.id===P.INVALID_ID?!1:A.isToggleItemCallbacks(T.RACE_CP,this.id)}static isValid=Pt;static togglePlayerUpdate(t,i=!0){return A.toggleItemUpdate(t,T.RACE_CP,i)}static hideForPlayer(t,i=-5e4){return A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?A.updateEx(t,a.x,a.y,a.z):A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return De.get(t)}static getInstances(){return[...De.values()]}static __inject__={create:un,createEx:mr,destroy:mn,getPlayerVisible:In,isPlayerIn:pn,isValid:Pt,togglePlayerAll:Pn,togglePlayer:fn}}H.onExit(({next:e})=>(Z.getInstances().forEach(t=>t.destroy()),De.clear(),e()));const[$y,Qy]=m({name:"OnDynamicRaceCPStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[qy,eS]=m({name:"OnDynamicRaceCPStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});we(({type:e,id:t,forPlayer:i,next:a})=>e===T.RACE_CP?Qy(i,Z.getInstance(t)):a()),Re(({type:e,id:t,forPlayer:i,next:a})=>e===T.RACE_CP?eS(i,Z.getInstance(t)):a());const[tS]=m({name:"OnPlayerEnterDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),raceCP:Z.getInstance(t)}}}),[iS]=m({name:"OnPlayerLeaveDynamicRaceCP",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),raceCp:Z.getInstance(t)}}}),aS=Object.freeze({onPlayerEnter:tS,onPlayerLeave:iS,onStreamIn:$y,onStreamOut:qy});class F{sourceInfo=null;_id=P.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){if(t===P.INVALID_ID)throw new Error("[StreamerActor]: Invalid id");const i=F.getInstance(t);if(i)return i;this._id=t,me.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==P.INVALID_ID)throw new Error("[StreamerActor]: Cannot create again");if(!this.sourceInfo)throw new Error("[StreamerActor]: Cannot create with only id");let{streamDistance:t,worldId:i,interiorId:a,playerId:r,areaId:n,priority:s}=this.sourceInfo;const{modelId:o,x:_,y:d,z:h,r:u,invulnerable:I,health:S,extended:y}=this.sourceInfo;return t??=k.ACTOR_SD,s??=0,y?(typeof i=="number"?i=[0]:i??=[0],typeof a=="number"?a=[-1]:a??=[-1],typeof r=="number"?r=[-1]:r??=[-1],typeof n=="number"?n=[-1]:n??=[-1],this._id=F.__inject__.createEx(o,_,d,h,u,I,S,t,i,a,r,n,s)):(Array.isArray(i)?i=0:i??=0,Array.isArray(a)?a=-1:a??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(n)?n=-1:n??=-1,this._id=F.__inject__.create(o,_,d,h,u,I,S,i,a,r,t,n,s)),me.set(this.id,this),this}destroy(){if(this.id===P.INVALID_ID&&!D.skip)throw new Error("[StreamerActor]: Cannot destroy to actor before create");return D.skip||F.__inject__.destroy(this.id),me.delete(this.id),this._id=P.INVALID_ID,this}isValid(){return D.skip&&this.id!==P.INVALID_ID?!0:F.isValid(this.id)}isStreamedIn(t){return this.id===P.INVALID_ID?!1:F.__inject__.isStreamedIn(this.id,t.id)}getVirtualWorld(){if(this.id===P.INVALID_ID)throw new Error("[StreamerActor]: Cannot get virtual world before create");return F.__inject__.getVirtualWorld(this.id)}setVirtualWorld(t){if(this.id===P.INVALID_ID)throw new Error("[StreamerActor]: Cannot set virtual world before create");return F.__inject__.setVirtualWorld(this.id,t)}applyAnimation(t,i,a=4.1,r=!1,n=!0,s=!0,o=!1,_=0){if(this.id===P.INVALID_ID)throw new Error("[StreamerActor]: Cannot apply animation before create");if(!St(t,i))throw new Error(`[StreamerActor]: Invalid anim library or name ${t} ${i}`);return F.__inject__.applyAnimation(this.id,t,i,a,r,n,s,o,_)}clearAnimations(){if(this.id===P.INVALID_ID)throw new Error("[StreamerActor]: Cannot clear animation before create");return F.__inject__.clearAnimations(this.id)}getFacingAngle(){return F.__inject__.getFacingAngle(this.id)}setFacingAngle(t){if(this.id===P.INVALID_ID)throw new Error("[StreamerActor]: Cannot set facing angle before create");return F.__inject__.setFacingAngle(this.id,t)}getPos(){if(this.id===P.INVALID_ID)throw new Error("[StreamerActor]: Cannot get pos before create");return F.__inject__.getPos(this.id)}setPos(t,i,a){if(this.id===P.INVALID_ID)throw new Error("[StreamerActor]: Cannot set pos before create");return F.__inject__.setPos(this.id,t,i,a)}getHealth(){return F.__inject__.getHealth(this.id)}setHealth(t){if(this.id===P.INVALID_ID)throw new Error("[StreamerActor]: Cannot set health before create");return F.__inject__.setHealth(this.id,t)}isInvulnerable(){return this.id===P.INVALID_ID?!1:F.__inject__.isInvulnerable(this.id)}setInvulnerable(t=!0){if(this.id===P.INVALID_ID)throw new Error("[StreamerActor]: Cannot set invulnerable before create");return F.__inject__.setInvulnerable(this.id,t)}getPlayerTarget(t){const i=F.__inject__.getPlayerTarget(t.id);return me.get(i)}getPlayerCameraTarget(t){const i=F.__inject__.getPlayerCameraTarget(t.id);return me.get(i)}getAnimation(){if(this.id===P.INVALID_ID)throw new Error("[StreamerActor]: Cannot get animation before create");return F.__inject__.getAnimation(this.id)}toggleCallbacks(t=!0){if(this.id===P.INVALID_ID)throw new Error("[StreamerActor]: Cannot toggle callbacks before create");return A.toggleItemCallbacks(T.ACTOR,this.id,t)}isToggleCallbacks(){return this.id===P.INVALID_ID?!1:A.isToggleItemCallbacks(T.ACTOR,this.id)}static isValid=ra;static togglePlayerUpdate(t,i=!0){return A.toggleItemUpdate(t,T.ACTOR,i)}static hideForPlayer(t,i=-5e4){return A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?A.updateEx(t,a.x,a.y,a.z):A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return me.get(t)}static getInstances(){return[...me.values()]}static __inject__={createEx:Er,create:ia,destroy:aa,getPlayerTarget:pa,getPlayerCameraTarget:Ia,isStreamedIn:na,getVirtualWorld:sa,setVirtualWorld:la,applyAnimation:oa,clearAnimations:_a,getFacingAngle:ca,setFacingAngle:da,getPos:ha,setPos:ga,getHealth:ua,setHealth:ma,isInvulnerable:Pa,setInvulnerable:fa,getAnimation:Ca}}H.onExit(({next:e})=>(F.getInstances().forEach(t=>t.destroy()),me.clear(),e()));const[rS]=m({name:"OnDynamicActorStreamIn",identifier:"ii",beforeEach(e,t){return{actor:F.getInstance(e),forPlayer:c.getInstance(t)}}}),[nS]=m({name:"OnDynamicActorStreamOut",identifier:"ii",beforeEach(e,t){return{actor:F.getInstance(e),forPlayer:c.getInstance(t)}}}),[sS]=m({name:"OnPlayerGiveDamageDynamicActor",identifier:"iiiii",defaultValue:!1,beforeEach(e,t,i,a,r){return{player:c.getInstance(e),actor:F.getInstance(t),amount:i,weapon:a,bodyPart:r}}}),lS=Object.freeze({onStreamIn:rS,onStreamOut:nS,onPlayerGiveDamage:sS});class ie{sourceInfo=null;_id=P.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t=="number"){if(t===P.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Invalid id");const i=ie.getInstance(t);if(i)return i;this._id=t,Be.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==P.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Cannot create again");if(!this.sourceInfo)throw new Error("[Streamer3DTextLabel]: Cannot create with only id");let{attachedPlayer:t,attachedVehicle:i,testLOS:a,streamDistance:r,worldId:n,interiorId:s,playerId:o,areaId:_,priority:d}=this.sourceInfo;const{charset:h,text:u,color:I,drawDistance:S,x:y,y:L,z:M,extended:Q}=this.sourceInfo;return t??=l.PLAYER_ID,i??=l.VEHICLE_ID,r??=k.TEXT_3D_LABEL_SD,a??=!1,d??=0,Q?(typeof n=="number"?n=[-1]:n??=[-1],typeof s=="number"?s=[-1]:s??=[-1],typeof o=="number"?o=[-1]:o??=[-1],typeof _=="number"?_=[-1]:_??=[-1],this._id=ie.__inject__.createEx(u,N(I),y,L,M,S,t,i,a,r,n,s,o,_,d,h||"utf8")):(Array.isArray(n)?n=-1:n??=-1,Array.isArray(s)?s=-1:s??=-1,Array.isArray(o)?o=-1:o??=-1,Array.isArray(_)?_=-1:_??=-1,this._id=ie.__inject__.create(h||"utf8",u,N(I),y,L,M,S,t,i,a,n,s,o,r,_,d)),Be.set(this.id,this),this}destroy(){if(this.id===P.INVALID_ID&&!D.skip)throw new Error("[Streamer3DTextLabel]: Cannot destroy before create");return D.skip||ie.__inject__.destroy(this.id),Be.delete(this.id),this._id=P.INVALID_ID,this}isValid(){return D.skip&&this.id!==P.INVALID_ID?!0:ie.isValid(this.id)}getColor(){if(this.id===P.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Cannot get color before create");return this.sourceInfo?this.sourceInfo.color:A.getIntData(T.TEXT_3D_LABEL,this._id,_e.COLOR)}getCharset(){if(this.id===P.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Cannot get charset before create");return this.sourceInfo?.charset}getText(){return ie.__inject__.getText(this.id,this.sourceInfo?.charset||"utf8")}updateText(t,i,a){if(this.id===P.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Cannot update text before create");let r="";return this.sourceInfo&&(r=a||this.sourceInfo.charset||"utf8",this.sourceInfo.charset=r),ie.__inject__.updateText(this.id,N(t),i,r)}toggleCallbacks(t=!0){if(this.id===P.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Cannot toggle callbacks before create");return A.toggleItemCallbacks(T.TEXT_3D_LABEL,this.id,t)}isToggleCallbacks(){return this.id===P.INVALID_ID?!1:A.isToggleItemCallbacks(T.TEXT_3D_LABEL,this.id)}setOffsets(t,i,a){if(this.id===P.INVALID_ID)return 0;const r=A.setFloatData(T.TEXT_3D_LABEL,this.id,_e.ATTACH_OFFSET_X,t);return A.setFloatData(T.TEXT_3D_LABEL,this.id,_e.ATTACH_OFFSET_Y,i),A.setFloatData(T.TEXT_3D_LABEL,this.id,_e.ATTACH_OFFSET_Z,a),this.sourceInfo&&(this.sourceInfo.x=t,this.sourceInfo.y=i,this.sourceInfo.z=a),r}attachToPlayer(t,i,a,r){if(this.id===P.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Cannot attachToPlayer before created");const n=typeof t=="number"?t:t.id,s=A.setIntData(T.TEXT_3D_LABEL,this.id,_e.ATTACHED_PLAYER,n);return n!==l.PLAYER_ID&&this.setOffsets(i,a,r),this.sourceInfo&&(this.sourceInfo.attachedPlayer=n),s}attachToVehicle(t,i,a,r){if(this.id===P.INVALID_ID)throw new Error("[Streamer3DTextLabel]: Cannot attachToVehicle before created");const n=typeof t=="number"?t:t.id,s=A.setIntData(T.TEXT_3D_LABEL,this.id,_e.ATTACHED_VEHICLE,n);return n!==l.VEHICLE_ID&&this.setOffsets(i,a,r),this.sourceInfo&&(this.sourceInfo.attachedVehicle=n),s}static isValid=ii;static togglePlayerUpdate(t,i=!0){return A.toggleItemUpdate(t,T.TEXT_3D_LABEL,i)}static hideForPlayer(t,i=-5e4){return A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?A.updateEx(t,a.x,a.y,a.z):A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return Be.get(t)}static getInstances(){return[...Be.values()]}static __inject__={create:UI,createEx:KI,getText:ZI,updateText:XI,destroy:ta,isValid:ii}}H.onExit(({next:e})=>(ie.getInstances().forEach(t=>t.destroy()),Be.clear(),e()));const[oS,_S]=m({name:"OnDynamic3dTextStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[cS,dS]=m({name:"OnDynamic3dTextStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});we(({type:e,id:t,forPlayer:i,next:a})=>e===T.TEXT_3D_LABEL?_S(i,ie.getInstance(t)):a()),Re(({type:e,id:t,forPlayer:i,next:a})=>e===T.TEXT_3D_LABEL?dS(i,ie.getInstance(t)):a());const hS=Object.freeze({onStreamIn:oS,onStreamOut:cS});class v{sourceInfo=null;_id=P.INVALID_ID;get type(){return this.sourceInfo?.type??void 0}get id(){return this._id}constructor(t){if(typeof t=="number"){if(t===P.INVALID_ID)throw new Error("[StreamerArea]: Invalid id");const i=v.getInstance(t);if(i)return i;this._id=t,Ee.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==P.INVALID_ID)throw new Error("[StreamerArea]: Cannot create again");if(!this.sourceInfo)throw new Error("[StreamerArea]: Cannot create with only id");let{worldId:t,interiorId:i,playerId:a,priority:r}=this.sourceInfo;r??=0;const{type:n,extended:s}=this.sourceInfo;if(s)if(typeof t=="number"?t=[-1]:t??=[-1],typeof i=="number"?i=[-1]:i??=[-1],typeof a=="number"?a=[-1]:a??=[-1],n==="circle"){const{x:o,y:_,size:d}=this.sourceInfo;if(d<0)throw new Error("[StreamerArea]: Invalid circle extend size");this._id=v.__inject__.createCircleEx(o,_,d,t,i,a,r)}else if(n==="cuboid"){const{minX:o,minY:_,minZ:d,maxX:h,maxY:u,maxZ:I}=this.sourceInfo;this._id=v.__inject__.createCuboidEx(o,_,d,h,u,I,t,i,a,r)}else if(n==="cylinder"){const{x:o,y:_,minZ:d,maxZ:h,size:u}=this.sourceInfo;if(u<0)throw new Error("[StreamerArea]: Invalid cylinder extend size");this._id=v.__inject__.createCylinderEx(o,_,d,h,u,t,i,a,r)}else if(n==="polygon"){const{points:o,minZ:_,maxZ:d}=this.sourceInfo;if(o.length%2!==0)throw new Error("[StreamerArea]: Cannot create polygon extended with asymmetrical points");this._id=v.__inject__.createPolygonEx(o,_,d,t,i,a,r)}else if(n==="rectangle"){const{minX:o,minY:_,maxX:d,maxY:h}=this.sourceInfo;this._id=v.__inject__.createRectangleEx(o,_,d,h,t,i,a,r)}else{const{x:o,y:_,z:d,size:h}=this.sourceInfo;if(h<0)throw new Error("[StreamerArea]: Invalid sphere extended size");this._id=v.__inject__.createSphereEx(o,_,d,h,t,i,a,r)}else if(Array.isArray(t)?t=-1:t??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,n==="circle"){const{x:o,y:_,size:d}=this.sourceInfo;if(d<0)throw new Error("[StreamerArea]: Invalid circle size");this._id=v.__inject__.createCircle(o,_,d,t,i,a,r)}else if(n==="cuboid"){const{minX:o,minY:_,minZ:d,maxX:h,maxY:u,maxZ:I}=this.sourceInfo;this._id=v.__inject__.createCuboid(o,_,d,h,u,I,t,i,a,r)}else if(n==="cylinder"){const{x:o,y:_,minZ:d,maxZ:h,size:u}=this.sourceInfo;if(u<0)throw new Error("[StreamerArea]: Invalid cylinder size");this._id=v.__inject__.createCylinder(o,_,d,h,u,t,i,a,r)}else if(n==="polygon"){const{points:o,minZ:_,maxZ:d}=this.sourceInfo;if(o.length%2!==0)throw new Error("[StreamerArea]: Cannot create polygon with asymmetrical points");this._id=v.__inject__.createPolygon(o,_,d,t,i,a,r)}else if(n==="rectangle"){const{minX:o,minY:_,maxX:d,maxY:h}=this.sourceInfo;this._id=v.__inject__.createRectangle(o,_,d,h,t,i,a,r)}else{const{x:o,y:_,z:d,size:h}=this.sourceInfo;if(h<0)throw new Error("[StreamerArea]: Invalid sphere size");this._id=v.__inject__.createSphere(o,_,d,h,t,i,a,r)}return Ee.set(this._id,this),this}destroy(){if(this.id===P.INVALID_ID&&!D.skip)throw new Error("[StreamerArea]: Cannot destroy the area before create");return D.skip||v.__inject__.destroy(this.id),Ee.delete(this.id),this._id=P.INVALID_ID,this}isValid(){return D.skip&&this.id!==P.INVALID_ID?!0:v.isValid(this.id)}getType(){if(this.id!==P.INVALID_ID)throw new Error("[StreamerArea]: Cannot get type before create");return v.__inject__.getType(this.id)}getPolygonPoints(){return v.__inject__.getPolygonPoints(this.id)}getPolygonNumberPoints(){if(this.id!==P.INVALID_ID)throw new Error("[StreamerArea]: Cannot getPolygonNumberPoints number before create");if(this.type!=="polygon")throw new Error("[StreamerArea]: getPolygonNumberPoints invalid area type");return v.__inject__.getPolygonNumberPoints(this.id)}isPlayerIn(t,i=!1){return this.id===P.INVALID_ID?!1:v.__inject__.isPlayerIn(t.id,this.id,i)}static isPlayerInAny(t,i=!1){return v.__inject__.isPlayerInAny(t.id,i)}isAnyPlayerIn(t=!1){return this.id===P.INVALID_ID?!1:v.__inject__.isAnyPlayerIn(this.id,t)}static isAnyPlayerInAny(t=!1){return v.__inject__.isAnyPlayerInAny(t)}static getPlayerAreas(t){return v.getPlayerAreasNumber(t)?v.__inject__.getPlayerAreas(t.id).areas.map(i=>Ee.get(i)):[]}static getPlayerAreasNumber(t){return v.__inject__.getPlayerAreasNumber(t.id)}isPointIn(t,i,a){return this.id===P.INVALID_ID?!1:v.__inject__.isPointIn(this.id,t,i,a)}static isPointInAny(t,i,a){return v.__inject__.isPointInAny(t,i,a)}isLineIn(t,i,a,r,n,s){return this.id===P.INVALID_ID?!1:v.__inject__.isLineIn(this.id,t,i,a,r,n,s)}static isLineInAny(t,i,a,r,n,s){return v.__inject__.isLineInAny(t,i,a,r,n,s)}static getForPoint(t,i,a){return v.getNumberForPoint(t,i,a)?v.__inject__.getForPoint(t,i,a).areas.map(r=>v.getInstance(r)).filter(Boolean):[]}static getNumberForPoint(t,i,a){return v.__inject__.getNumberForPoint(t,i,a)}static getForLine(t,i,a,r,n,s){return v.getNumberForLine(t,i,a,r,n,s)?v.__inject__.getForLine(t,i,a,r,n,s).areas.map(o=>v.getInstance(o)).filter(Boolean):[]}static getNumberForLine(t,i,a,r,n,s){return v.__inject__.getNumberForLine(t,i,a,r,n,s)}attachToObject(t,i=0,a=0,r=0){if(this.id===P.INVALID_ID||t.id===P.INVALID_ID)throw new Error("[StreamerArea]: Cannot toggle attach to object before create");return v.__inject__.attachToObject(this.id,t.id,lt.DYNAMIC,l.PLAYER_ID,i,a,r)}attachToPlayer(t,i=0,a=0,r=0){if(this.id===P.INVALID_ID||t.id===l.PLAYER_ID)throw new Error("[StreamerArea]: Cannot toggle attach to player before create");return v.__inject__.attachToPlayer(this.id,t.id,i,a,r)}attachToVehicle(t,i=0,a=0,r=0){if(this.id===P.INVALID_ID||t.id===l.VEHICLE_ID)throw new Error("[StreamerArea]: Cannot toggle attach to vehicle before create");return v.__inject__.attachToVehicle(this.id,t.id,i,a,r)}toggleSpectateMode(t){if(this.id===P.INVALID_ID)throw new Error("[StreamerArea]: Cannot toggle spectate mode before create");return v.__inject__.toggleSpectateMode(this.id,t)}isToggleSpectateMode(){return this.id===P.INVALID_ID?!1:v.__inject__.isToggleSpectateMode(this.id)}toggleCallbacks(t=!0){if(this.id===P.INVALID_ID)throw new Error("[StreamerArea]: Cannot toggle callbacks before create");return A.toggleItemCallbacks(T.AREA,this.id,t)}isToggleCallbacks(){return this.id===P.INVALID_ID?!1:A.isToggleItemCallbacks(T.AREA,this.id)}static isValid=va;static togglePlayerUpdate(t,i=!0){return A.toggleItemUpdate(t,T.AREA,i)}static hideForPlayer(t,i=-5e4){return A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!1)}static showForPlayer(t,i=-5e4){const a=t.getPos();return a.ret?A.updateEx(t,a.x,a.y,a.z):A.updateEx(t,0,0,i),this.togglePlayerUpdate(t,!0)}static getInstance(t){return Ee.get(t)}static getInstances(){return[...Ee.values()]}static __inject__={createCircleEx:Pr,createCuboidEx:yr,createCylinderEx:pr,createPolygonEx:Sr,createRectangleEx:Cr,createSphereEx:Ir,createCircle:ya,createCuboid:Na,createCylinder:Sa,createPolygon:Da,createRectangle:Aa,createSphere:Ea,destroy:Ta,getType:ba,getPolygonPoints:La,getPolygonNumberPoints:ai,isPlayerIn:wa,isPlayerInAny:Ra,isAnyPlayerIn:Oa,isAnyPlayerInAny:Ga,getPlayerAreas:ja,getPlayerAreasNumber:ri,isPointIn:Fa,isPointInAny:Ma,isLineIn:Va,isLineInAny:ka,getForPoint:Ba,getNumberForPoint:ni,getForLine:xa,getNumberForLine:si,attachToObject:Ha,attachToPlayer:Wa,attachToVehicle:Ua,toggleSpectateMode:Ka,isToggleSpectateMode:Xa}}H.onExit(({next:e})=>(v.getInstances().forEach(t=>t.destroy()),Ee.clear(),e()));const[gS,uS]=m({name:"OnDynamicAreaStreamIn",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[mS,fS]=m({name:"OnDynamicAreaStreamOut",isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});we(({type:e,id:t,forPlayer:i,next:a})=>e===T.AREA?uS(i,v.getInstance(t)):a()),Re(({type:e,id:t,forPlayer:i,next:a})=>e===T.AREA?fS(i,v.getInstance(t)):a());const[PS]=m({name:"OnPlayerEnterDynamicArea",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),area:v.getInstance(t)}}}),[pS]=m({name:"OnPlayerLeaveDynamicArea",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),area:v.getInstance(t)}}}),IS=Object.freeze({onStreamIn:gS,onStreamOut:mS,onPlayerEnter:PS,onPlayerLeave:pS});class g{_id=l.NPC_ID;_name="";get id(){return this._id}constructor(t){if(typeof t=="string"&&(this._name=t),typeof t=="number"){if(t===l.NPC_ID)throw new Error("[Npc]: Invalid id");this._id=t;const i=g.getInstance(this._id);if(i)return i;Ce.set(this._id,this)}return this}create(){if(this.id!==l.NPC_ID)throw new Error("[Npc]: Cannot create again");return this._id=g.__inject__.create(this._name),this._id!==l.NPC_ID&&(this.getPlayer()||new c(this._id),Ce.set(this._id,this)),this}destroy(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot destroy before create");return D.skip||g.__inject__.destroy(this._id),Ce.delete(this._id),this._id=l.NPC_ID,this}getPlayer(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getPlayer before create");return c.getInstance(this._id)}getName(){if(this._id===l.NPC_ID)throw new Error("[Npc]: Cannot getName before create");return this._name?this._name:this.getPlayer().getName().name}isValid(){return this.id===l.NPC_ID?!1:D.skip&&this._id!==l.NPC_ID?!0:g.isValid(this._id)}spawn(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot spawn before create");return g.__inject__.spawn(this._id),this}respawn(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot respawn before create");return g.__inject__.respawn(this._id),this}setPos(t,i,a){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setPos before create");return g.__inject__.setPos(this._id,t,i,a),this}setRot(t,i,a){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setRot before create");return g.__inject__.setRot(this._id,t,i,a),this}getRot(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getRot before create");return g.__inject__.getRot(this._id)}setFacingAngle(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setFacingAngle before create");return g.__inject__.setFacingAngle(this._id,t),this}getFacingAngle(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getFacingAngle before create");return g.__inject__.getFacingAngle(this._id)}setVirtualWorld(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setVirtualWorld before create");return g.__inject__.setVirtualWorld(this._id,t),this}getVirtualWorld(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getVirtualWorld before create");return g.__inject__.getVirtualWorld(this._id)}move(t,i,a,r=fe.AUTO,n=Fe.AUTO){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot move before create");return g.__inject__.move(this._id,t,i,a,r,n)}moveToPlayer(t,i=fe.AUTO,a=Fe.AUTO){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot moveToPlayer before create");return g.__inject__.moveToPlayer(this._id,t.id,i,a)}stopMove(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot stopMove before create");return g.__inject__.stopMove(this._id),this}isMoving(){return this.id===l.NPC_ID?!1:g.__inject__.isMoving(this._id)}isMovingToPlayer(t){return this.id===l.NPC_ID?!1:g.__inject__.isMovingToPlayer(this._id,t.id)}setSkin(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setSkin before create");return g.__inject__.setSkin(this._id,t),this}getSkin(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getSkin before create");return g.__inject__.getSkin(this._id)}isStreamedIn(t){return this.id===l.NPC_ID?!1:g.__inject__.isStreamedIn(this._id,t.id)}isAnyStreamedIn(){return this.id===l.NPC_ID?!1:g.__inject__.isAnyStreamedIn(this._id)}setInterior(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setInterior before create");return g.__inject__.setInterior(this._id,t),this}getInterior(){return this.id===l.NPC_ID?0:g.__inject__.getInterior(this._id)}setHealth(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setHealth before create");return g.__inject__.setHealth(this._id,t),this}getHealth(){return this.id===l.NPC_ID?0:g.__inject__.getHealth(this._id)}setArmour(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setArmour before create");return g.__inject__.setArmour(this._id,t),this}getArmour(){return this.id===l.NPC_ID?0:g.__inject__.getArmour(this._id)}isDead(){return this.id===l.NPC_ID?!1:g.__inject__.isDead(this._id)}applyAnimation(t,i,a,r,n,s,o,_,d){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot applyAnimation before create");return g.__inject__.applyAnimation(this._id,t,i,a,r,n,s,o,_,d),this}setWeapon(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setWeapon before create");return g.__inject__.setWeapon(this._id,t),this}getWeapon(){return this.id===l.NPC_ID?0:g.__inject__.getWeapon(this._id)}setAmmo(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setAmmo before create");return g.__inject__.setAmmo(this._id,t),this}getAmmo(){return this.id===l.NPC_ID?0:g.__inject__.getAmmo(this._id)}setKeys(t,i,a){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setKeys before create");return g.__inject__.setKeys(this._id,t,i,a),this}getKeys(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getKeys before create");return g.__inject__.getKeys(this._id)}setWeaponSkillLevel(t,i){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setWeaponSkillLevel before create");return g.__inject__.setWeaponSkillLevel(this._id,t,i),this}getWeaponSkillLevel(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getWeaponSkillLevel before create");return g.__inject__.getWeaponSkillLevel(this._id,t)}meleeAttack(t=-1,i=!1){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot meleeAttack before create");return g.__inject__.meleeAttack(this._id,t,i),this}stopMeleeAttack(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot stopMeleeAttack before create");return g.__inject__.stopMeleeAttack(this._id),this}isMeleeAttacking(){return this.id===l.NPC_ID?!1:g.__inject__.isMeleeAttacking(this._id)}setFightingStyle(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setFightingStyle before create");return g.__inject__.setFightingStyle(this._id,t),this}getFightingStyle(){return this.id===l.NPC_ID?ut.NORMAL:g.__inject__.getFightingStyle(this._id)}enableReloading(t=!0){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot enableReloading before create");return g.__inject__.enableReloading(this._id,t),this}isReloadEnabled(){return this.id===l.NPC_ID?!1:g.__inject__.isReloadEnabled(this._id)}isReloading(){return this.id===l.NPC_ID?!1:g.__inject__.isReloading(this._id)}enableInfiniteAmmo(t=!0){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot enableInfiniteAmmo before create");return g.__inject__.enableInfiniteAmmo(this._id,t),this}isInfiniteAmmoEnabled(){return this.id===l.NPC_ID?!1:g.__inject__.isInfiniteAmmoEnabled(this._id)}setWeaponState(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setWeaponState before create");return g.__inject__.setWeaponState(this._id,t)}getWeaponState(){return this.id===l.NPC_ID?mt.UNKNOWN:g.__inject__.getWeaponState(this._id)}setAmmoInClip(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setAmmoInClip before create");return g.__inject__.setAmmoInClip(this._id,t),this}getAmmoInClip(){return this.id===l.NPC_ID?0:g.__inject__.getAmmoInClip(this._id)}shoot(t,i,a,r,n,s,o=0,_=0,d=0,h=!0,u=ge.ALL){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot shoot before create");return g.__inject__.shoot(this._id,t,i,a,r,n,s,o,_,d,h,u),this}isShooting(){return this.id===l.NPC_ID?!1:g.__inject__.isShooting(this._id)}aimAt(t,i,a,r=!1,n=-1,s=!0,o=0,_=0,d=0,h=ge.ALL){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot aimAt before create");return g.__inject__.aimAt(this._id,t,i,a,r,n,s,o,_,d,h),this}aimAtPlayer(t,i=!1,a=-1,r=!0,n=0,s=0,o=0,_=0,d=0,h=0,u=ge.ALL){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot aimAtPlayer before create");return g.__inject__.aimAtPlayer(this._id,t.id,i,a,r,n,s,o,_,d,h,u),this}stopAim(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot stopAim before create");return g.__inject__.stopAim(this._id),this}isAiming(){return this.id===l.NPC_ID?!1:g.__inject__.isAiming(this._id)}isAimingAtPlayer(t){return this.id===l.NPC_ID?!1:g.__inject__.isAimingAtPlayer(this._id,t.id)}setWeaponAccuracy(t,i){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setWeaponAccuracy before create");return g.__inject__.setWeaponAccuracy(this._id,t,i),this}getWeaponAccuracy(t){return this.id===l.NPC_ID?0:g.__inject__.getWeaponAccuracy(this._id,t)}setWeaponReloadTime(t,i){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setWeaponReloadTime before create");return g.__inject__.setWeaponReloadTime(this._id,t,i)}getWeaponReloadTime(t){return this.id===l.NPC_ID?0:g.__inject__.getWeaponReloadTime(this._id,t)}getWeaponActualReloadTime(t){return this.id===l.NPC_ID?0:g.__inject__.getWeaponActualReloadTime(this._id,t)}setWeaponShootTime(t,i){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setWeaponShootTime before create");return g.__inject__.setWeaponShootTime(this._id,t,i)}getWeaponShootTime(t){return this.id===l.NPC_ID?0:g.__inject__.getWeaponShootTime(this._id,t)}setWeaponClipSize(t,i){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setWeaponClipSize before create");return g.__inject__.setWeaponClipSize(this._id,t,i)}getWeaponClipSize(t){return this.id===l.NPC_ID?0:g.__inject__.getWeaponClipSize(this._id,t)}getWeaponActualClipSize(t){return this.id===l.NPC_ID?0:g.__inject__.getWeaponActualClipSize(this._id,t)}enterVehicle(t,i,a=fe.AUTO){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot enterVehicle before create");return g.__inject__.enterVehicle(this._id,t.id,i,a),this}exitVehicle(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot exitVehicle before create");return g.__inject__.exitVehicle(this._id),this}putInVehicle(t,i){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot putInVehicle before create");return g.__inject__.putInVehicle(this._id,t.id,i)}removeFromVehicle(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot removeFromVehicle before create");return g.__inject__.removeFromVehicle(this._id)}getVehicle(){return p.getInstance(this.getVehicleID())}getVehicleID(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getVehicle before create");return g.__inject__.getVehicle(this._id)}getVehicleSeat(){return this.id===l.NPC_ID?0:g.__inject__.getVehicleSeat(this._id)}getEnteringVehicle(){return p.getInstance(this.getEnteringVehicleId())}getEnteringVehicleId(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getEnteringVehicle before create");return g.__inject__.getEnteringVehicle(this._id)}getEnteringVehicleSeat(){return this.id===l.NPC_ID?0:g.__inject__.getEnteringVehicleSeat(this._id)}isEnteringVehicle(){return this.id===l.NPC_ID?!1:g.__inject__.isEnteringVehicle(this._id)}useVehicleSiren(t=!0){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot useVehicleSiren before create");return g.__inject__.useVehicleSiren(this._id,t)}isVehicleSirenUsed(){return this.id===l.NPC_ID?!1:g.__inject__.isVehicleSirenUsed(this._id)}setVehicleHealth(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setVehicleHealth before create");return g.__inject__.setVehicleHealth(this._id,t)}getVehicleHealth(){return this.id===l.NPC_ID?0:g.__inject__.getVehicleHealth(this._id)}setVehicleHydraThrusters(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setVehicleHydraThrusters before create");return g.__inject__.setVehicleHydraThrusters(this._id,t)}getVehicleHydraThrusters(){return this.id===l.NPC_ID?0:g.__inject__.getVehicleHydraThrusters(this._id)}setVehicleGearState(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setVehicleGearState before create");return g.__inject__.setVehicleGearState(this._id,t)}getVehicleGearState(){return g.__inject__.getVehicleGearState(this._id)}setVehicleTrainSpeed(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setVehicleTrainSpeed before create");return g.__inject__.setVehicleTrainSpeed(this._id,t)}getVehicleTrainSpeed(){return this.id===l.NPC_ID?0:g.__inject__.getVehicleTrainSpeed(this._id)}resetAnimation(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot resetAnimation before create");return g.__inject__.resetAnimation(this._id)}setAnimation(t,i,a,r,n,s,o){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setAnimation before create");return g.__inject__.setAnimation(this._id,t,i,a,r,n,s,o)}getAnimation(){return this.id===l.NPC_ID?0:g.__inject__.getAnimation(this._id)}clearAnimations(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot clearAnimations before create");return g.__inject__.clearAnimations(this._id)}setSpecialAction(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setSpecialAction before create");return g.__inject__.setSpecialAction(this._id,t)}getSpecialAction(){return g.__inject__.getSpecialAction(this._id)}startPlayback(t,i=!1,a=0,r=0,n=0,s=0,o=0,_=0){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot startPlayback before create");return g.__inject__.startPlayback(this._id,t,i,a,r,n,s,o,_)}startPlaybackEx(t,i=!1,a=0,r=0,n=0,s=0,o=0,_=0){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot startPlaybackEx before create");return g.__inject__.startPlaybackEx(this._id,t.id,i,a,r,n,s,o,_)}stopPlayback(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot stopPlayback before create");return g.__inject__.stopPlayback(this._id)}pausePlayback(t=!0){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot pausePlayback before create");return g.__inject__.pausePlayback(this._id,t)}isPlayingPlayback(){return this.id===l.NPC_ID?!1:g.__inject__.isPlayingPlayback(this._id)}isPlaybackPaused(){return this.id===l.NPC_ID?!1:g.__inject__.isPlaybackPaused(this._id)}playNode(t,i=fe.AUTO,a=Fe.AUTO,r=0,n=!0){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot playNode before create");return g.__inject__.playNode(this._id,t.id,i,a,r,n)}stopPlayingNode(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot stopPlayingNode before create");return g.__inject__.stopPlayingNode(this._id)}pausePlayingNode(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot pausePlayingNode before create");return g.__inject__.pausePlayingNode(this._id)}resumePlayingNode(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot resumePlayingNode before create");return g.__inject__.resumePlayingNode(this._id)}isPlayingNodePaused(){return this.id===l.NPC_ID?!1:g.__inject__.isPlayingNodePaused(this._id)}isPlayingNode(){return this.id===l.NPC_ID?!1:g.__inject__.isPlayingNode(this._id)}changeNode(t,i){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot changeNode before create");return g.__inject__.changeNode(this._id,t.id,i)}updateNodePoint(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot updateNodePoint before create");return g.__inject__.updateNodePoint(this._id,t)}setInvulnerable(t=!0){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setInvulnerable before create");return g.__inject__.setInvulnerable(this._id,t)}isInvulnerable(){return this.id===l.NPC_ID?!1:g.__inject__.isInvulnerable(this._id)}setSurfingOffsets(t,i,a){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setSurfingOffsets before create");return g.__inject__.setSurfingOffsets(this._id,t,i,a)}getSurfingOffsets(){return g.__inject__.getSurfingOffsets(this._id)}setSurfingVehicle(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setSurfingVehicle before create");return g.__inject__.setSurfingVehicle(this._id,t.id)}getSurfingVehicle(){return p.getInstance(this.getSurfingVehicleId())}getSurfingVehicleId(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getSurfingVehicle before create");return g.__inject__.getSurfingVehicle(this._id)}setSurfingObject(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setSurfingObject before create");return t.isGlobal()?g.__inject__.setSurfingObject(this._id,t.id):0}getSurfingObject(){return C.getInstance(this.getSurfingObjectId())}getSurfingObjectId(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getSurfingObject before create");return g.__inject__.getSurfingObject(this._id)}setSurfingPlayerObject(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setSurfingPlayerObject before create");return t.isGlobal()?0:this._setSurfingPlayerObject(t.id)}getSurfingPlayerObject(){return C.getInstance(this.getSurfingPlayerObjectId(),this.getPlayer())}_setSurfingPlayerObject(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setSurfingPlayerObject before create");return g.__inject__.setSurfingPlayerObject(this._id,t)}getSurfingPlayerObjectId(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getSurfingPlayerObject before create");return g.__inject__.getSurfingPlayerObject(this._id)}resetSurfingData(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot resetSurfingData before create");return g.__inject__.resetSurfingData(this._id)}setSurfingDynamicObject(t){return this._setSurfingPlayerObject(A.getItemInternalID(new c(this._id),T.OBJECT,t.id))}getSurfingDynamicObject(){return O.getInstance(this.getSurfingDynamicObjectId())}getSurfingDynamicObjectId(){return A.getItemStreamerID(new c(this._id),T.OBJECT,this.getSurfingPlayerObjectId())}isSpawned(){return this.id===l.NPC_ID?!1:g.__inject__.isSpawned(this._id)}kill(t,i){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot kill before create");return g.__inject__.kill(this._id,typeof t=="number"?t:t.id,i)}setVelocity(t,i,a){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setVelocity before create");return g.__inject__.setVelocity(this._id,t,i,a)}getVelocity(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getVelocity before create");return g.__inject__.getVelocity(this._id)}getPlayerAimingAt(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getPlayerAimingAt before create");const t=g.__inject__.getPlayerAimingAt(this._id);return t!==l.PLAYER_ID?c.getInstance(t):null}getPlayerMovingTo(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getPlayerMovingTo before create");const t=g.__inject__.getPlayerMovingTo(this._id);return t!==l.PLAYER_ID?c.getInstance(t):null}getPosMovingTo(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getPosMovingTo before create");return g.__inject__.getPosMovingTo(this._id)}getCustomSkin(){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot getCustomSkin before create");return g.__inject__.getCustomSkin(this._id)}setAngleToPos(t,i,a){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setAngleToPos before create");return g.__inject__.setAngleToPos(this._id,t,i,a)}setAngleToPlayer(t){if(this.id===l.NPC_ID)throw new Error("[Npc]: Cannot setAngleToPlayer before create");return g.__inject__.setAngleToPlayer(this._id,t.id)}static startRecordingPlayerData(t,i,a){if(t.isRecording)throw new Error("[NpcFunc]: It should be stopped before recording");g.__inject__.startRecordingPlayerData(t.id,i,a),t[B].isRecording=!0}static stopRecordingPlayerData(t){if(!t.isRecording)throw new Error("[NpcFunc]: It should be started before stop");g.__inject__.stopRecordingPlayerData(t.id),t[B].isRecording=!1}static isValid(t){return g.__inject__.isValid(t)}static getInstance(t){return Ce.get(t)}static getInstances(){return[...Ce.values()]}static __inject__={create:Xc,destroy:Zc,isValid:Yc,spawn:zc,respawn:Jc,setPos:$c,setRot:Qc,getRot:qc,setFacingAngle:ed,getFacingAngle:td,setVirtualWorld:id,getVirtualWorld:ad,move:rd,moveToPlayer:nd,stopMove:sd,isMoving:ld,isMovingToPlayer:od,setSkin:_d,getSkin:cd,isStreamedIn:dd,isAnyStreamedIn:hd,setInterior:gd,getInterior:ud,setHealth:md,getHealth:fd,setArmour:Pd,getArmour:pd,isDead:Id,applyAnimation:Cd,setWeapon:yd,getWeapon:Sd,setAmmo:Ed,getAmmo:Ad,setKeys:Nd,getKeys:Dd,setWeaponSkillLevel:Td,getWeaponSkillLevel:vd,meleeAttack:bd,stopMeleeAttack:Ld,isMeleeAttacking:wd,setFightingStyle:Rd,getFightingStyle:Od,enableReloading:Gd,isReloadEnabled:jd,isReloading:Fd,enableInfiniteAmmo:Md,isInfiniteAmmoEnabled:Vd,setWeaponState:kd,getWeaponState:Bd,setAmmoInClip:xd,getAmmoInClip:Hd,shoot:Wd,isShooting:Ud,aimAt:Kd,aimAtPlayer:Xd,stopAim:Zd,isAiming:Yd,isAimingAtPlayer:zd,setWeaponAccuracy:Jd,getWeaponAccuracy:$d,setWeaponReloadTime:Qd,getWeaponReloadTime:qd,getWeaponActualReloadTime:eh,setWeaponShootTime:th,getWeaponShootTime:ih,setWeaponClipSize:ah,getWeaponClipSize:rh,getWeaponActualClipSize:nh,enterVehicle:sh,exitVehicle:lh,putInVehicle:oh,removeFromVehicle:_h,getVehicle:ch,getVehicleSeat:dh,getEnteringVehicle:hh,getEnteringVehicleSeat:gh,isEnteringVehicle:uh,useVehicleSiren:mh,isVehicleSirenUsed:fh,setVehicleHealth:Ph,getVehicleHealth:ph,setVehicleHydraThrusters:Ih,getVehicleHydraThrusters:Ch,setVehicleGearState:yh,getVehicleGearState:Sh,setVehicleTrainSpeed:Eh,getVehicleTrainSpeed:Ah,resetAnimation:Nh,setAnimation:Dh,getAnimation:Th,clearAnimations:vh,setSpecialAction:bh,getSpecialAction:Lh,startPlayback:wh,startPlaybackEx:Rh,stopPlayback:Oh,pausePlayback:Gh,isPlayingPlayback:jh,isPlaybackPaused:Fh,playNode:Mh,stopPlayingNode:Vh,pausePlayingNode:kh,resumePlayingNode:Bh,isPlayingNodePaused:xh,isPlayingNode:Hh,changeNode:Wh,updateNodePoint:Uh,setInvulnerable:Kh,isInvulnerable:Xh,setSurfingOffsets:Zh,getSurfingOffsets:Yh,setSurfingVehicle:zh,getSurfingVehicle:Jh,setSurfingObject:$h,getSurfingObject:Qh,setSurfingPlayerObject:qh,getSurfingPlayerObject:eg,resetSurfingData:tg,isSpawned:ig,kill:ag,setVelocity:rg,getVelocity:ng,getPlayerAimingAt:sg,getPlayerMovingTo:lg,getPosMovingTo:og,getCustomSkin:_g,setAngleToPos:cg,setAngleToPlayer:dg,startRecordingPlayerData:U_,stopRecordingPlayerData:K_}}class ze{_filePath="";_id=l.RECORD_ID;get id(){return this._id}get filePath(){return this._filePath}constructor(t){if(typeof t=="string"?(this._filePath=t,this._id=samp.callNative("NPC_LoadRecord","s",this._filePath)):this._id=t,ue.has(this._id))return ue.get(this._id)}unload(){const t=this._id;if(!D.skip){const i=!!samp.callNative("NPC_UnloadRecord","i",this._id);return i&&(this._id=l.RECORD_ID,this._filePath="",ue.delete(t)),i}return this._id=l.RECORD_ID,this._filePath="",ue.delete(t),!0}isValid(){return D.skip&&this._id!==l.RECORD_ID?!0:ze.isValid(this._id)}static isValid(t){return!!samp.callNative("NPC_IsValidRecord","i",t)}static getCount(){return samp.callNative("NPC_GetRecordCount","")}static unloadAll(){const t=!!samp.callNative("NPC_UnloadAllRecords","");return t&&ue.clear(),t}static getInstance(t){return ue.get(t)}static getInstances(){return[...ue.values()]}}class Ye{_id=l.NODE_ID;get id(){return this._id}constructor(t){if(this._id=t,se.has(this._id))return se.get(this._id);se.set(this._id,this)}open(){samp.callNative("NPC_OpenNode","i",this._id)&&!se.has(this._id)&&se.set(this._id,this)}close(){if(!D.skip){const t=!!samp.callNative("NPC_CloseNode","i",this._id);return t&&(se.delete(this._id),this._id=l.NODE_ID),t}return se.delete(this._id),this._id=l.NODE_ID,!0}isOpen(){return D.skip&&this._id!==l.NODE_ID?!0:!!samp.callNative("NPC_IsNodeOpen","i",this._id)}getType(){return samp.callNative("NPC_GetNodeType","i",this._id)}setPoint(t){return!!samp.callNative("NPC_SetNodePoint","ii",this._id,t)}getPointPosition(){const[t,i,a,r]=samp.callNative("NPC_GetNodePointPosition","iFFF",this._id);return{x:t,y:i,z:a,ret:!!r}}getPointCount(){return samp.callNative("NPC_GetNodePointCount","i",this._id)}getInfo(){const[t,i,a,r]=samp.callNative("NPC_GetNodeInfo","iIII",this._id);return{vehNodes:t,pedNodes:i,naviNode:a,ret:!!r}}static getInstance(t){return se.get(t)}static getInstances(){return[...se.values()]}}class Je{_id=l.PATH_ID;get id(){return this._id}constructor(t){if(typeof t<"u"){if(ye.has(t))return ye.get(t);this._id=t}else this._id=samp.callNative("NPC_CreatePath","")}destroy(){const t=!!samp.callNative("NPC_DestroyPath","i",this._id);return t&&(this._id=l.PATH_ID,ye.delete(this._id)),t}addPoint(t,i,a,r=.2){return!!samp.callNative("NPC_AddPointToPath","iffff",this._id,t,i,a,r)}removePoint(t){return!!samp.callNative("NPC_RemovePointFromPath","ii",this._id,t)}clear(){return!!samp.callNative("NPC_ClearPath","i",this._id)}getPointCount(){return samp.callNative("NPC_GetPathPointCount","i",this._id)}getPoint(t){const[i,a,r,n=.2,s]=samp.callNative("NPC_GetPathPoint","ii",this._id,t);return{x:i,y:a,z:r,stopRange:n,ret:!!s}}isValid(){return Je.isValid(this._id)}getCurrentPointIndex(){return samp.callNative("NPC_GetCurrentPathPointIndex","i",this._id)}move(t=fe.AUTO,i=Fe.AUTO,a=!1){return!!samp.callNative("NPC_MoveByPath","iiifi",this._id,this._id,t,i,a)}hasPointInRadius(t,i,a,r){return!!samp.callNative("NPC_HasPathPointInRange","iiffff",this._id,this._id,t,i,a,r)}static destroyAll(){const t=!!samp.callNative("NPC_DestroyAllPath","");return t&&ye.clear(),t}static getCount(){return samp.callNative("NPC_GetPathCount","")}static isValid(t){return!!samp.callNative("NPC_IsValidPath","i",t)}static getInstance(t){return ye.get(t)}static getInstances(){return[...ye.values()]}}H.onExit(({next:e})=>(g.getInstances().forEach(t=>{t.isValid()&&t.destroy()}),Ce.clear(),Ye.getInstances().forEach(t=>{t.isOpen()&&t.close()}),se.clear(),Je.destroyAll(),ye.clear(),ze.getInstances().forEach(t=>{t.isValid()&&t.unload()}),ue.clear(),e()));const[CS]=m({name:"OnClientMessageI18n",identifier:"iai",beforeEach(e,t){return{color:e,buffer:t,string:E.decodeFromBuf(t)}}}),[yS]=m({name:"OnNPCFinishMove",identifier:"i",beforeEach(e){return{npc:g.getInstance(e)}}}),[SS]=m({name:"OnNPCCreate",identifier:"i",beforeEach(e){return{npc:g.getInstance(e)}}}),[ES]=m({name:"OnNPCDestroy",identifier:"i",beforeEach(e){return{npc:g.getInstance(e)}},afterEach({npc:e}){Ce.delete(e.id)}}),[AS]=m({name:"OnNPCWeaponStateChange",identifier:"iii",beforeEach(e,t,i){return{npc:g.getInstance(e),newState:t,oldState:i}}}),[NS]=m({name:"OnNPCTakeDamage",identifier:"iiiii",beforeEach(e,t,i,a,r){return{npc:g.getInstance(e),damager:c.getInstance(t),damage:i,weapon:a,bodyPart:r}}}),[DS]=m({name:"OnNPCGiveDamage",identifier:"iiiii",beforeEach(e,t,i,a,r){return{npc:g.getInstance(e),damager:c.getInstance(t),damage:i,weapon:a,bodyPart:r}}}),[TS]=m({name:"OnNPCDeath",identifier:"iii",beforeEach(e,t,i){const a=c.getInstance(t)||l.PLAYER_ID;return{npc:g.getInstance(e),killer:a,reason:i}}}),[vS]=m({name:"OnNPCSpawn",identifier:"i",beforeEach(e){return{npc:g.getInstance(e)}}}),[bS]=m({name:"OnNPCRespawn",identifier:"i",beforeEach(e){return{npc:g.getInstance(e)}}}),[LS]=m({name:"OnNPCPlaybackStart",identifier:"ii",beforeEach(e,t){return{npc:g.getInstance(e),record:ze.getInstance(t),recordId:t}}}),[wS]=m({name:"OnNPCPlaybackEnd",identifier:"ii",beforeEach(e,t){return{npc:g.getInstance(e),record:ze.getInstance(t),recordId:t}}}),[RS]=m({name:"OnNPCWeaponShot",identifier:"iiiifff",beforeEach(e,t,i,a,r,n,s){return{npc:g.getInstance(e),weapon:t,hitType:i,hitId:a,fX:r,fY:n,fZ:s}}}),[OS]=m({name:"OnNPCFinishNodePoint",identifier:"iii",beforeEach(e,t,i){return{npc:g.getInstance(e),node:Ye.getInstance(t),nodeId:t,pointId:i}}}),[GS]=m({name:"OnNPCFinishNode",identifier:"ii",beforeEach(e,t){return{npc:g.getInstance(e),node:Ye.getInstance(t),nodeId:t}}}),[jS]=m({name:"OnNPCChangeNode",identifier:"iii",beforeEach(e,t,i){return{npc:g.getInstance(e),newNode:Ye.getInstance(t),oldNode:Ye.getInstance(i),newNodeId:t,oldNodeId:i}}}),[FS]=m({name:"OnNPCFinishMovePath",identifier:"ii",beforeEach(e,t){return{npc:g.getInstance(e),path:Je.getInstance(t),pathId:t}}}),[MS]=m({name:"OnNPCFinishMovePathPoint",identifier:"iii",beforeEach(e,t,i){return{npc:g.getInstance(e),path:Je.getInstance(t),pathId:t,pointIndex:i}}}),VS=Object.freeze({onClientMessage:CS,onFinishMove:yS,onCreate:SS,onDestroy:ES,onSpawn:vS,onRespawn:bS,onWeaponStateChange:AS,onTakeDamage:NS,onGiveDamage:DS,onDeath:TS,onPlaybackStart:LS,onPlaybackEnd:wS,onWeaponShot:RS,onFinishNodePoint:OS,onFinishNode:GS,onChangeNode:jS,onFinishMovePath:FS,onFinishMovePathPoint:MS});class q{constructor(){throw new Error("This is a static class and cannot be instantiated.")}static getNetworkStats(){return q.__inject__.getNetworkStats()}static getPlayerNetworkStats(t){return q.__inject__.getPlayerNetworkStats(t.id)}static getBytesReceived(t){return q.__inject__.getBytesReceived(t.id)}static getBytesSent(t){return q.__inject__.getBytesSent(t.id)}static getConnectionStatus(t){return q.__inject__.getConnectionStatus(t.id)}static getConnectedTime(t){return q.__inject__.getConnectedTime(t.id)}static getIpPort(t){return q.__inject__.getIpPort(t.id)}static getMessagesReceived(t){return q.__inject__.getMessagesReceived(t.id)}static getMessagesRecvPerSecond(t){return q.__inject__.getMessagesRecvPerSecond(t.id)}static getMessagesSent(t){return q.__inject__.getMessagesSent(t.id)}static getPacketLossPercent(t){return q.__inject__.getPacketLossPercent(t.id)}static __inject__={getNetworkStats:Ol,getPlayerNetworkStats:Rl,getBytesReceived:yl,getBytesSent:El,getConnectionStatus:Dl,getConnectedTime:Il,getIpPort:Tl,getMessagesReceived:Cl,getMessagesRecvPerSecond:Al,getMessagesSent:Sl,getPacketLossPercent:Nl}}class Oe{_text;_time;_style;get text(){return this._text}set text(t){this._text=t}get time(){return this._time}set time(t){this._time=t}get style(){return this._style}set style(t){this._style=t}constructor(t,i,a){this._text=t,this._time=i,this._style=a}static hideForAll(t){Oe.__inject__.hideForAll(t)}static has(t,i){return Oe.__inject__.has(t.id,i)}forAll(t="win1252"){Oe.__inject__.forAll(E.encodeToBuf(E.convertSpecialChar(this.text),t),this.time,this.style)}forPlayer(t,i="win1252"){Oe.__inject__.forPlayer(t.id,E.encodeToBuf(E.convertSpecialChar(this.text),i),this.time,this.style)}hideForPlayer(t){return Oe.__inject__.hideForPlayer(t.id,this.style)}static __inject__={hideForAll:Ms,has:Po,forAll:Fs,forPlayer:fo,hideForPlayer:Io}}class x{sourceInfo=null;_id=l.MENU;get id(){return this._id}constructor(t){if(typeof t=="number"){if(t===l.MENU)throw new Error("[Menu]: Invalid id");this._id=t;const i=x.getInstance(this._id);if(i)return i;Ve.set(this.id,this)}else this.sourceInfo=t}create(){if(!this.sourceInfo)throw new Error("[Menu]: Cannot create with only id");if(this._id!==l.MENU)throw new Error("[Menu]: Cannot be created twice");const{title:t,columns:i,x:a,y:r,colWidth:n,charset:s="ISO-8859-1"}=this.sourceInfo,[o,_]=n;if(this._id=x.__inject__.create(t,i,a,r,o,_,s),this.id===l.MENU||x.getInstances().length===W.MAX_MENUS)throw new Error("[Menu]: Cannot create menu");return Ve.set(this._id,this),this}destroy(){if(this._id===l.MENU)throw new Error("[Menu]: Cannot destroy before create");return D.skip||x.__inject__.destroy(this.id),Ve.delete(this._id),this._id=l.MENU,this}addItem(t,i){if(this._id===l.MENU)throw new Error("[Menu]: Cannot addItem before create");if(t!==0&&t!==1)throw new Error("[Menu]: Wrong number of columns");return x.__inject__.addItem(this.id,t,i,this.sourceInfo?.charset||"ISO-8859-1"),this}setColumnHeader(t,i){if(this._id===l.MENU)throw new Error("[Menu]: Cannot setColumnHeader before create");if(t!==0&&t!==1)throw new Error("[Menu]: Wrong number of columns");return x.__inject__.setColumnHeader(this.id,t,i,this.sourceInfo?.charset||"ISO-8859-1"),this}disable(){if(this._id===l.MENU)throw new Error("[Menu]: Cannot disable menu before create");return x.__inject__.disable(this.id),this}disableRow(t){if(this._id===l.MENU)throw new Error("[Menu]: Cannot disable row before create");return x.__inject__.disableRow(this.id,t)}isValid(){return D.skip&&this.id!==l.MENU?!0:x.isValid(this.id)}showForPlayer(t){if(this._id===l.MENU)throw new Error("[Menu]: Cannot show menu before create");return x.__inject__.showForPlayer(this.id,t.id)}hideForPlayer(t){if(this._id===l.MENU)throw new Error("[Menu]: Cannot hide menu before create");return x.__inject__.hideForPlayer(this.id,t.id)}isDisabled(){return this._id===l.MENU?!1:x.__inject__.isDisabled(this.id)}isRowDisabled(t){return this._id===l.MENU?!1:x.__inject__.isRowDisabled(this.id,t)}getItems(t){return this._id===l.MENU?0:x.__inject__.getItems(this.id,t)}getPos(){return x.__inject__.getPos(this.id)}getColumnWidth(){return x.__inject__.getColumnWidth(this.id)}getColumnHeader(t){if(this._id===l.MENU)throw new Error("[Menu]: Cannot get column header before create");return x.__inject__.getColumnHeader(this.id,t,this.sourceInfo?.charset||"ISO-8859-1")}getItem(t,i){if(this._id===l.MENU)throw new Error("[Menu]: Cannot get item before create");if(i<0||i>this.getItems(t)-1)throw new Error("[Menu]: invalid getItem range");return x.__inject__.getItem(this.id,t,i,this.sourceInfo?.charset||"ISO-8859-1")}static isValid(t){return x.__inject__.isValid(t)}static getInstance(t){return Ve.get(t)}static getInstances(){return[...Ve.values()]}static getInstanceByPlayer(t){return this.getInstance(Ni(t.id))}static __inject__={create:oC,destroy:nm,addItem:_C,setColumnHeader:cC,disable:_m,disableRow:cm,isValid:om,showForPlayer:sm,hideForPlayer:lm,isDisabled:em,isRowDisabled:tm,getItems:im,getPos:am,getColumnWidth:rm,getColumnHeader:sC,getItem:lC,getPlayerMenu:Ni}}H.onExit(({next:e})=>(x.getInstances().forEach(t=>t.destroy()),Ve.clear(),e()));const[kS]=m({name:"OnPlayerExitedMenu",identifier:"i",beforeEach(e){return{player:c.getInstance(e)}}}),[BS]=m({name:"OnPlayerSelectedMenuRow",identifier:"ii",beforeEach(e,t){const i=c.getInstance(e),a=x.getInstanceByPlayer(i);return{player:i,menu:a,row:t}}}),xS=Object.freeze({onPlayerExited:kS,onPlayerSelectedRow:BS});class b{sourceInfo=null;_player=null;_id=l.GANG_ZONE;get id(){return this._id}constructor(t,i){if(typeof t=="number"){if(t===l.GANG_ZONE)throw new Error("[GangZone]: Invalid id");i&&(this._player=i);const a=b.getInstance(t,i);if(a)return a;this._id=t,this.isGlobal()?Me.set(this._id,this):i&&(Y.has(i)||Y.set(i,new Map),Y.get(this.getPlayer()).set(this.id,this))}else this.sourceInfo=t,this._player=null}create(){if(!this.sourceInfo)throw new Error("[GangZone]: Cannot create with only id");if(this.id!==l.GANG_ZONE)throw new Error("[GangZone]: Cannot create again");const{player:t}=this.sourceInfo;if(t){const{minX:i,minY:a,maxX:r,maxY:n}=this.sourceInfo;if(this._id=b.__inject__.createPlayer(t.id,i,a,r,n),this.id===l.GANG_ZONE||b.getInstances(t).length===W.MAX_GANG_ZONES)throw new Error("[GangZone]: Cannot create playerGangZone");Y.has(t)||Y.set(t,new Map),Y.get(t).set(this._id,this)}else{const{minX:i,minY:a,maxX:r,maxY:n}=this.sourceInfo;if(this._id=b.__inject__.create(i,a,r,n),this.id===l.GANG_ZONE||b.getInstances().length===W.MAX_GANG_ZONES)throw new Error("[GangZone]: Cannot create gangZone");Me.set(this.id,this)}return this}destroy(){if(this.id===l.GANG_ZONE)throw new Error("[GangZone]: Cannot destroy before create");const t=this.getPlayer();if(!t)D.skip||b.__inject__.destroy(this.id),Me.delete(this.id);else if(D.skip||b.__inject__.destroyPlayer(t.id,this.id),Y.has(t)){const i=Y.get(t);i.delete(this.id),i.size||Y.delete(t)}this._id=l.GANG_ZONE}isGlobal(){return!(this.sourceInfo?this.sourceInfo.player:this._player)}isPlayer(){return!this.isGlobal()}getPlayer(){return this._player?this._player:this.sourceInfo&&this.sourceInfo.player?this.sourceInfo.player:null}getPlayerId(){const t=this.getPlayer();return t?t.id:l.PLAYER_ID}showForAll(t){if(this.id===l.GANG_ZONE)throw new Error("[GangZone]: Cannot show gangzone before create");if(!this.getPlayer())return b.__inject__.showForAll(this.id,t),this;throw new Error("[GangZone]: player's gangzone should not be show for all.")}showForPlayer(t,i){if(this.id===l.GANG_ZONE)throw new Error("[GangZone]: Cannot show gangzone before create");const a=this.getPlayer();if(a)b.__inject__.showPlayer(a.id,this.id,N(t));else if(i)b.__inject__.showForPlayer(i.id,this.id,t);else throw new Error("[GangZone]: invalid player for show");return this}hideForAll(){if(this.id===l.GANG_ZONE)throw new Error("[GangZone]: Cannot hide gangzone before create");if(!this.getPlayer())return b.__inject__.hideForAll(this.id),this;throw new Error("[GangZone]: player's gangzone should not be hide for all.")}hideForPlayer(t){if(this.id===l.GANG_ZONE)throw new Error("[GangZone]: Cannot hide gangzone before create");const i=this.getPlayer();if(i)b.__inject__.hidePlayer(i.id,this.id);else if(t)b.__inject__.hideForPlayer(t.id,this.id);else throw new Error("[GangZone]: invalid player for hide");return this}flashForAll(t){if(this.id===l.GANG_ZONE)throw new Error("[GangZone]: Cannot flash gangzone before create");if(!this.getPlayer())return b.__inject__.flashForAll(this.id,t),this;throw new Error("[GangZone]: player's gangzone should not be flash for all.")}flashForPlayer(t,i){if(this.id===l.GANG_ZONE)throw new Error("[GangZone]: Cannot flash gangzone before create");const a=this.getPlayer();if(a)b.__inject__.flashPlayer(a.id,this.id,N(i));else if(t)b.__inject__.flashForPlayer(t.id,this.id,i);else throw new Error("[GangZone]: invalid player for flash");return this}stopFlashForAll(){if(this.id===l.GANG_ZONE)throw new Error("[GangZone]: Cannot stop flash gangzone before create");if(!this.getPlayer())return b.__inject__.stopFlashForAll(this.id),this;throw new Error("[GangZone]: player's gangzone should not be stop flash for all.")}stopFlashForPlayer(t){if(this.id===l.GANG_ZONE)throw new Error("[GangZone]: Cannot stop flash gangzone before create");const i=this.getPlayer();if(i)b.__inject__.stopFlashPlayer(i.id,this.id);else if(t)b.__inject__.stopFlashForPlayer(t.id,this.id);else throw new Error("[GangZone]: invalid player for flash");return this}isValid(){if(D.skip&&this.id!==l.GANG_ZONE)return!0;if(this.id===l.GANG_ZONE)return!1;const t=this.getPlayer();return t?b.isValidPlayer(t.id,this.id):b.isValidGlobal(this.id)}isPlayerIn(t){if(this.id===l.GANG_ZONE)return!1;const i=this.getPlayer();return i?b.__inject__.isPlayerInPlayer(i.id,this.id):b.__inject__.isPlayerIn(t.id,this.id)}isVisibleForPlayer(t){if(this.id===l.GANG_ZONE)return!1;const i=this.getPlayer();return i?b.__inject__.isVisiblePlayer(i.id,this.id):b.__inject__.isVisibleForPlayer(t.id,this.id)}getColorForPlayer(t){if(this.id===l.GANG_ZONE)throw new Error("[GangZone]: Cannot get color before create");const i=this.getPlayer();return i?b.__inject__.getColorPlayer(i.id,this.id):b.__inject__.getColorForPlayer(t.id,this.id)}getFlashColorForPlayer(t){if(this.id===l.GANG_ZONE)throw new Error("[GangZone]: Cannot get flash color before create");const i=this.getPlayer();return i?b.__inject__.getFlashColorPlayer(i.id,this.id):b.__inject__.getFlashColorForPlayer(t.id,this.id)}isFlashingForPlayer(t){if(this.id===l.GANG_ZONE)return!1;const i=this.getPlayer();return i?b.__inject__.isFlashingPlayer(i.id,this.id):b.__inject__.isFlashingForPlayer(t.id,this.id)}getPos(){if(this.id===l.GANG_ZONE)throw new Error("[GangZone]: Cannot get position before create");const t=this.getPlayer();return t?b.__inject__.getPosPlayer(t.id,this.id):b.__inject__.getPos(this.id)}useCheck(t){if(this.id===l.GANG_ZONE)throw new Error("[GangZone]: Cannot use check before create");const i=this.getPlayer();return i?b.__inject__.useCheckPlayer(i.id,this.id,t):b.__inject__.useCheck(this.id,t),this}static isValidPlayer(t,i){return b.__inject__.isValidPlayer(t,i)}static isValidGlobal(t){return b.__inject__.isValidGlobal(t)}static getInstance(t,i){if(!i)return Me.get(t);if(i.id!==l.PLAYER_ID)return Y.get(i)?.get(t)}static getInstances(t){return t?t.id===l.PLAYER_ID?[]:[...Y.get(t)?.values()||[]]:[...Me.values()]}static getPlayersInstances(){return Array.from(Y.entries()).map(([t,i])=>[t,Array.from(i.values())])}static __inject__={create:Um,destroy:Km,showForAll:Zm,hideForAll:zm,flashForAll:$m,stopFlashForAll:qm,getPos:Hm,useCheck:Wm,createPlayer:ef,destroyPlayer:tf,showPlayer:af,showForPlayer:Xm,hidePlayer:rf,hideForPlayer:Ym,flashPlayer:nf,flashForPlayer:Jm,stopFlashPlayer:sf,stopFlashForPlayer:Qm,getPosPlayer:gf,useCheckPlayer:uf,isPlayerIn:Mm,isPlayerInPlayer:of,isVisibleForPlayer:Vm,isVisiblePlayer:_f,getColorForPlayer:km,getColorPlayer:cf,getFlashColorForPlayer:Bm,getFlashColorPlayer:df,isFlashingForPlayer:xm,isFlashingPlayer:hf,isValidPlayer:lf,isValidGlobal:Fm}}Ze.onDisconnect(({player:e,next:t})=>(Y.has(e)&&(b.getInstances(e).forEach(i=>{i.isValid()&&i.destroy()}),Y.delete(e)),t())),H.onExit(({next:e})=>(b.getInstances().forEach(t=>t.destroy()),b.getPlayersInstances().map(([,t])=>t).flat().forEach(t=>t.destroy()),Me.clear(),Y.clear(),e()));const[HS]=m({name:"OnPlayerEnterGangZone",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),gangZone:b.getInstance(t)}}}),[WS]=m({name:"OnPlayerLeaveGangZone",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),gangZone:b.getInstance(t)}}}),[US]=m({name:"OnPlayerEnterPlayerGangZone",identifier:"ii",beforeEach(e,t){const i=c.getInstance(e);return{player:i,gangZone:b.getInstance(t,i)}}}),[KS]=m({name:"OnPlayerLeavePlayerGangZone",identifier:"ii",beforeEach(e,t){const i=c.getInstance(e);return{player:i,gangZone:b.getInstance(t,i)}}}),[XS]=m({name:"OnPlayerClickGangZone",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),gangZone:b.getInstance(t)}}}),[ZS]=m({name:"OnPlayerClickPlayerGangZone",identifier:"ii",beforeEach(e,t){const i=c.getInstance(e);return{player:i,gangZone:b.getInstance(t,i)}}}),YS=Object.freeze({onPlayerEnterGlobal:HS,onPlayerLeaveGlobal:WS,onPlayerEnterPlayer:US,onPlayerLeavePlayer:KS,onPlayerClickGlobal:XS,onPlayerClickPlayer:ZS});class f{sourceInfo=null;_player=null;_id=l.TEXT_DRAW;get id(){return this._id}constructor(t,i){if(typeof t=="number"){if(t===l.TEXT_DRAW||t===l.PLAYER_TEXT_DRAW)throw new Error("[TextDraw]: Invalid id");i&&(this._player=i);const a=f.getInstance(t,i);if(a)return a;this._id=t,this.isGlobal()?ke.set(this._id,this):i&&(z.has(i)||z.set(i,new Map),z.get(this.getPlayer()).set(this.id,this))}else this.sourceInfo=t,this._player=null}create(){if(!this.sourceInfo)throw new Error("[TextDraw]: Cannot create with only id");if(this.id!==l.TEXT_DRAW)throw new Error("[TextDraw]: Cannot create again");const{x:t,y:i,text:a,player:r,charset:n="ISO-8859-1"}=this.sourceInfo,s=E.encodeToBuf(E.convertSpecialChar(a),n);if(r){if(this._id=f.__inject__.createPlayer(r.id,t,i,s),this.id===l.TEXT_DRAW||f.getInstances(r).length===W.MAX_TEXT_DRAWS)throw new Error("[TextDraw]: Cannot create player textdraw");z.has(r)||z.set(r,new Map),z.get(r).set(this._id,this)}else{if(this._id=f.__inject__.create(t,i,s),this.id===l.TEXT_DRAW||f.getInstances().length===W.MAX_TEXT_DRAWS)throw new Error("[TextDraw]: Cannot create textdraw");ke.set(this.id,this)}return this}destroy(){this.id===l.TEXT_DRAW&&f.beforeCreateWarn("destroy textdraw");const t=this.getPlayer();if(!t)D.skip||f.__inject__.destroy(this.id),ke.delete(this.id);else if(D.skip||f.__inject__.destroyPlayer(t.id,this.id),z.has(t)){const i=z.get(t);i.delete(this.id),i.size||z.delete(t)}return this._id=l.TEXT_DRAW,this}setFont(t){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set font"),this;const i=this.getPlayer();return i?f.__inject__.setFontPlayer(i.id,this.id,t):f.__inject__.setFont(this.id,t),this}setColor(t){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set color"),this;const i=this.getPlayer();return i?f.__inject__.setColorPlayer(i.id,this.id,t):f.__inject__.setColor(this.id,t),this}setBoxColors(t){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set box color"),this;const i=this.getPlayer();return i?f.__inject__.setBoxColorPlayer(i.id,this.id,t):f.__inject__.setBoxColor(this.id,t),this}setBackgroundColors(t){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set background color"),this;const i=this.getPlayer();return i?f.__inject__.setBackgroundColorPlayer(i.id,this.id,t):f.__inject__.setBackgroundColor(this.id,t),this}setAlignment(t){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set alignment"),this;const i=this.getPlayer();return i?f.__inject__.setAlignmentPlayer(i.id,this.id,t):f.__inject__.setAlignment(this.id,t),this}setLetterSize(t,i){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set letter size"),this;const a=this.getPlayer();return a?f.__inject__.setLetterSizePlayer(a.id,this.id,t,i):f.__inject__.setLetterSize(this.id,t,i),this}setOutline(t){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set outline model"),this;if(t<0)throw new Error("[TextDraw]: Invalid outline value");const i=this.getPlayer();return i?f.__inject__.setOutlinePlayer(i.id,this.id,t):f.__inject__.setOutline(this.id,t),this}setPreviewModel(t){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set preview model"),this;this.setFont(et.MODEL_PREVIEW);const i=this.getPlayer();return i?f.__inject__.setPreviewModelPlayer(i.id,this.id,t):f.__inject__.setPreviewModel(this.id,t),this}setPreviewRot(t,i,a,r=1){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set preview rot"),this;this.setFont(et.MODEL_PREVIEW);const n=this.getPlayer();return n?f.__inject__.setPreviewRotPlayer(n.id,this.id,t,i,a,r):f.__inject__.setPreviewRot(this.id,t,i,a,r),this}setPreviewVehColors(t,i){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set preview veh col"),this;this.setFont(et.MODEL_PREVIEW);const a=this.getPlayer();return a?f.__inject__.setPreviewVehicleColorsPlayer(a.id,this.id,t,i):f.__inject__.setPreviewVehicleColors(this.id,t,i),this}setProportional(t=!0){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set Proportional"),this;const i=this.getPlayer();return i?f.__inject__.setProportionalPlayer(i.id,this.id,t):f.__inject__.setProportional(this.id,t),this}setSelectable(t){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set Selectable"),this;const i=this.getPlayer();return i?f.__inject__.setSelectablePlayer(i.id,this.id,t):f.__inject__.setSelectable(this.id,t),this}setShadow(t){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set shadow"),this;if(t<0)throw new Error("[TextDraw]: Invalid shadow value");const i=this.getPlayer();return i?f.__inject__.setShadowPlayer(i.id,this.id,t):f.__inject__.setShadow(this.id,t),this}setString(t,i){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set string"),this;if(t.length===0||t.length>1024)throw new Error("[TextDraw]: Invalid text length");const a=this.sourceInfo?.charset||"ISO-8859-1",r=E.encodeToBuf(E.convertSpecialChar(t),a),n=this.getPlayer();return n?f.__inject__.setStringPlayer(n.id,this.id,r):i?f.__inject__.setStringForPlayer(this.id,i.id,r):f.__inject__.setString(this.id,r),this}setTextSize(t,i){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set TextSize"),this;const a=this.getPlayer();return a?f.__inject__.setTextSizePlayer(a.id,this.id,t,i):f.__inject__.setTextSize(this.id,t,i),this}useBox(t){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set TextSize"),this;const i=this.getPlayer();return i?f.__inject__.useBoxPlayer(i.id,this.id,t):f.__inject__.useBox(this.id,t),this}static beforeCreateWarn(t){throw new Error(`[TextDraw]: Cannot ${t} before create`)}show(t){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("show"),this;const i=this.getPlayer();if(i)f.__inject__.showPlayer(i.id,this.id);else if(t)f.__inject__.showForPlayer(t.id,this.id);else throw new Error("[TextDraw]: invalid player for show");return this}hide(t){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("hide"),this;const i=this.getPlayer();if(i)f.__inject__.hidePlayer(i.id,this.id);else if(t)f.__inject__.hideForPlayer(t.id,this.id);else throw new Error("[TextDraw]: invalid player for hide");return this}showAll(){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("show"),this;if(!this.getPlayer())return f.__inject__.showForAll(this.id),this;throw new Error("[TextDraw]: player's textdraw should not be show for all.")}hideAll(){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("hideAll"),this;if(!this.getPlayer())return f.__inject__.hideForAll(this.id),this;throw new Error("[TextDraw]: player's textdraw should not be hide for all.")}isValid(){if(D.skip&&this.id!==l.TEXT_DRAW)return!0;const t=this.getPlayer();return t?f.__inject__.isValidPlayer(t.id,this.id):f.__inject__.isValid(this.id)}isVisibleForPlayer(t){if(this.id===l.TEXT_DRAW)return!1;const i=this.getPlayer();return i?f.__inject__.isVisiblePlayer(i.id,this.id):t?f.__inject__.isVisibleForPlayer(t.id,this.id):!1}getString(){this.id===l.TEXT_DRAW&&f.beforeCreateWarn("getString");const t=this.getPlayer();return t?f.__inject__.getStringPlayer(t.id,this.id).str:f.__inject__.getString(this.id).str}setPos(t,i){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("set position"),this;const a=this.getPlayer();return a?f.__inject__.setPosPlayer(a.id,this.id,t,i):f.__inject__.setPos(this.id,t,i),this}getLetterSize(){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("get letter size");const t=this.getPlayer();return t?f.__inject__.getLetterSizePlayer(t.id,this.id):f.__inject__.getLetterSize(this.id)}getTextSize(){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("get text size");const t=this.getPlayer();return t?f.__inject__.getTextSizePlayer(t.id,this.id):f.__inject__.getTextSize(this.id)}getPos(){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("get position");const t=this.getPlayer();return t?f.__inject__.getPosPlayer(t.id,this.id):f.__inject__.getPos(this.id)}getColor(){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("get color");const t=this.getPlayer();return t?f.__inject__.getColorPlayer(t.id,this.id):f.__inject__.getColor(this.id)}getBoxColor(){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("get box color");const t=this.getPlayer();return t?f.__inject__.getBoxColorPlayer(t.id,this.id):f.__inject__.getBoxColor(this.id)}getBackgroundColor(){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("get bg color");const t=this.getPlayer();return t?f.__inject__.getBackgroundColorPlayer(t.id,this.id):f.__inject__.getBackgroundColor(this.id)}getShadow(){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("get shadow");const t=this.getPlayer();return t?f.__inject__.getShadowPlayer(t.id,this.id):f.__inject__.getShadow(this.id)}getOutline(){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("get outline");const t=this.getPlayer();return t?f.__inject__.getOutlinePlayer(t.id,this.id):f.__inject__.getOutline(this.id)}getFont(){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("get font");const t=this.getPlayer();return t?f.__inject__.getFontPlayer(t.id,this.id):f.__inject__.getFont(this.id)}isBox(){if(this.id===l.TEXT_DRAW)return!1;const t=this.getPlayer();return t?f.__inject__.isBoxPlayer(t.id,this.id):f.__inject__.isBox(this.id)}isProportional(){if(this.id===l.TEXT_DRAW)return!1;const t=this.getPlayer();return t?f.__inject__.isProportionalPlayer(t.id,this.id):f.__inject__.isProportional(this.id)}isSelectable(){if(this.id===l.TEXT_DRAW)return!1;const t=this.getPlayer();return t?f.__inject__.isSelectablePlayer(t.id,this.id):f.__inject__.isSelectable(this.id)}getAlignment(){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("get alignment");const t=this.getPlayer();return t?f.__inject__.getAlignmentPlayer(t.id,this.id):f.__inject__.getAlignment(this.id)}getPreviewModel(){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("get preview model");const t=this.getPlayer();return t?f.__inject__.getPreviewModelPlayer(t.id,this.id):f.__inject__.getPreviewModel(this.id)}getPreviewRot(){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("get preview rotation");const t=this.getPlayer();return t?f.__inject__.getPreviewRotPlayer(t.id,this.id):f.__inject__.getPreviewRot(this.id)}getPreviewVehColors(){if(this.id===l.TEXT_DRAW)return f.beforeCreateWarn("get preview vel colors");const t=this.getPlayer();return t?f.__inject__.getPreviewVehicleColorsPlayer(t.id,this.id):f.__inject__.getPreviewVehicleColors(this.id)}isGlobal(){return!this.getPlayer()}isPlayer(){return!this.isGlobal()}getPlayer(){return this._player?this._player:this.sourceInfo&&this.sourceInfo.player?this.sourceInfo.player:null}getPlayerId(){const t=this.getPlayer();return t?t.id:l.PLAYER_ID}static getInstance(t,i){if(!i)return ke.get(t);if(i.id!==l.PLAYER_ID)return z.get(i)?.get(t)}static getInstances(t){return t?t.id===l.PLAYER_ID?[]:[...z.get(t)?.values()||[]]:[...ke.values()]}static getPlayersInstances(){return Array.from(z.entries()).map(([t,i])=>[t,Array.from(i.values())])}static __inject__={create:Ff,createPlayer:DP,destroy:Mf,destroyPlayer:TP,setFont:Zf,setFontPlayer:MP,setColor:xf,setColorPlayer:wP,setBoxColor:Wf,setBoxColorPlayer:OP,setBackgroundColor:Xf,setBackgroundColorPlayer:FP,setAlignment:Bf,setAlignmentPlayer:LP,setLetterSize:Vf,setLetterSizePlayer:vP,setOutline:Kf,setOutlinePlayer:jP,setPreviewModel:tP,setPreviewModelPlayer:WP,setPreviewRot:iP,setPreviewRotPlayer:UP,setPreviewVehicleColors:aP,setPreviewVehicleColorsPlayer:KP,setProportional:Yf,setProportionalPlayer:VP,setSelectable:zf,setSelectablePlayer:kP,setShadow:Uf,setShadowPlayer:GP,setStringPlayer:HP,setStringForPlayer:jf,setString:eP,setTextSize:kf,setTextSizePlayer:bP,useBoxPlayer:RP,useBox:Hf,showPlayer:BP,showForPlayer:Jf,hidePlayer:xP,hideForPlayer:$f,showForAll:Qf,hideForAll:qf,isValidPlayer:sP,isValid:mf,isVisiblePlayer:lP,isVisibleForPlayer:ff,getStringPlayer:oP,getString:Pf,setPosPlayer:_P,setPos:pf,getLetterSizePlayer:cP,getLetterSize:If,getTextSizePlayer:dP,getTextSize:Cf,getPosPlayer:hP,getPos:yf,getColorPlayer:gP,getColor:Sf,getBoxColorPlayer:uP,getBoxColor:Ef,getBackgroundColorPlayer:mP,getBackgroundColor:Af,getShadowPlayer:fP,getShadow:Nf,getOutlinePlayer:PP,getOutline:Df,getFontPlayer:pP,getFont:Tf,isBoxPlayer:IP,isBox:vf,isProportionalPlayer:CP,isProportional:bf,isSelectablePlayer:yP,isSelectable:Lf,getAlignmentPlayer:SP,getAlignment:wf,getPreviewModelPlayer:EP,getPreviewModel:Rf,getPreviewRotPlayer:AP,getPreviewRot:Of,getPreviewVehicleColors:Gf,getPreviewVehicleColorsPlayer:NP}}Ze.onDisconnect(({player:e,next:t})=>(z.has(e)&&(f.getInstances(e).forEach(i=>{i.isValid()&&i.destroy()}),z.delete(e)),t())),H.onExit(({next:e})=>(f.getInstances().forEach(t=>t.destroy()),f.getPlayersInstances().map(([,t])=>t).flat().forEach(t=>t.destroy()),ke.clear(),z.clear(),e()));const[zS]=m({name:"OnPlayerClickTextDraw",identifier:"ii",defaultValue:!1,beforeEach(e,t){return{player:c.getInstance(e),textDraw:t===l.TEXT_DRAW?t:f.getInstance(t)}}}),[JS]=m({name:"OnPlayerClickPlayerTextDraw",identifier:"ii",defaultValue:!1,beforeEach(e,t){const i=c.getInstance(e);return{player:i,textDraw:t===l.TEXT_DRAW?t:f.getInstance(t,i)}}}),$S=Object.freeze({onPlayerClickGlobal:zS,onPlayerClickPlayer:JS});Ze.onDisconnect(({player:e,next:t})=>(K.has(e)&&(C.getInstances(e).forEach(i=>{i.isValid()&&i.destroy()}),K.delete(e)),t())),H.onExit(({next:e})=>(C.getInstances().forEach(t=>t.destroy()),C.getPlayersInstances().map(([,t])=>t).flat().forEach(t=>t.destroy()),Te.clear(),K.clear(),e()));const[QS]=m({name:"OnPlayerSelectObject",identifier:"iiiifff",defaultValue:!1,beforeEach(e,t,i,a,r,n,s){const o=c.getInstance(e),_=t!==Pe.UNKNOWN&&t===Pe.PLAYER_OBJECT,d=t!==Pe.UNKNOWN&&t===Pe.GLOBAL_OBJECT;return{player:o,type:t,isPlayerObject:_,isGlobal:d,objectMp:t===Pe.GLOBAL_OBJECT?C.getInstance(i):C.getInstance(i,o),modelId:a,fX:r,fY:n,fZ:s}}}),[qS]=m({name:"OnPlayerEditObject",identifier:"iiiiffffff",defaultValue:!1,beforeEach(e,t,i,a,r,n,s,o,_,d){const h=c.getInstance(e),u=t===1;return{player:h,isPlayerObject:u,isGlobal:!u,objectMp:u?C.getInstance(i,h):C.getInstance(i),response:a,fX:r,fY:n,fZ:s,fRotX:o,fRotY:_,fRotZ:d}}}),[eE]=m({name:"OnPlayerEditAttachedObject",identifier:"iiiiifffffffff",defaultValue:!1,beforeEach(e,t,i,a,r,n,s,o,_,d,h,u,I,S){return{player:c.getInstance(e),response:t,index:i,modelId:a,boneId:r,fOffsetX:n,fOffsetY:s,fOffsetZ:o,fRotX:_,fRotY:d,fRotZ:h,fScaleX:u,fScaleY:I,fScaleZ:S}}}),[tE]=m({name:"OnObjectMoved",identifier:"i",beforeEach(e){return{objectMp:C.getInstance(e)}}}),[iE]=m({name:"OnPlayerObjectMoved",identifier:"ii",beforeEach(e,t){const i=c.getInstance(e);return{player:i,playerObject:C.getInstance(t,i)}}}),aE=Object.freeze({onPlayerSelect:QS,onPlayerEdit:qS,onPlayerEditAttached:eE,onGlobalMoved:tE,onPlayerMoved:iE});class j{_id=l.ACTOR_ID;sourceInfo=null;get id(){return this._id}constructor(t){if(typeof t=="number"){if(t===l.ACTOR_ID)throw new Error("[Actor]: Invalid id");const i=j.getInstance(t);if(i)return i;this._id=t}else this.sourceInfo=t}create(){if(this._id!==l.ACTOR_ID)throw new Error("[Actor]: Cannot be created twice");const{skin:t,x:i,y:a,z:r,rotation:n}=this.sourceInfo;if(this._id=j.__inject__.create(t,i,a,r,n),this._id===l.ACTOR_ID||j.getInstances().length===W.MAX_ACTORS)throw new Error("[Actor]: Cannot create actor");return He.set(this._id,this),this}destroy(){if(this._id===l.ACTOR_ID)throw new Error("[Actor]: Cannot before create");return D.skip||j.__inject__.destroy(this._id),He.delete(this._id),this._id=l.ACTOR_ID,this}isStreamIn(t){return this._id===l.ACTOR_ID?!1:j.__inject__.isStreamedIn(this.id,t.id)}setVirtualWorld(t){return this._id===l.ACTOR_ID?!1:j.__inject__.setVirtualWorld(this.id,t)}getVirtualWorld(){return this._id===l.ACTOR_ID?0:j.__inject__.getVirtualWorld(this.id)}applyAnimation(t,i,a,r,n,s,o,_){return this._id===l.ACTOR_ID?!1:j.__inject__.applyAnimation(this.id,t,i,a,r,n,s,o,_)}clearAnimations(){return this._id===l.ACTOR_ID?!1:j.__inject__.clearAnimations(this.id)}setPos(t,i,a){return this._id===l.ACTOR_ID?!1:j.__inject__.setPos(this.id,t,i,a)}getPos(){if(this._id===l.ACTOR_ID)throw new Error("[Actor]: Cannot getPos before create");return j.__inject__.getPos(this.id)}setFacingAngle(t){return this._id===l.ACTOR_ID?!1:j.__inject__.setFacingAngle(this.id,t)}getFacingAngle(){if(this._id===l.ACTOR_ID)throw new Error("[Actor]: Cannot getFacingAngle before create");return j.__inject__.getFacingAngle(this.id)}setHealth(t){return this._id===l.ACTOR_ID?!1:j.__inject__.setHealth(this.id,t)}getHealth(){if(this._id===l.ACTOR_ID)throw new Error("[Actor]: Cannot getHealth before create");return j.__inject__.getHealth(this.id)}setInvulnerable(t){return this._id===l.ACTOR_ID?!1:j.__inject__.setInvulnerable(this.id,t)}isInvulnerable(){return this._id===l.ACTOR_ID?!1:j.__inject__.isInvulnerable(this.id)}isValid(){return j.isValid(this._id)}setSkin(t){return this._id===l.ACTOR_ID?!1:j.__inject__.setSkin(this.id,t)}getSkin(){if(this._id===l.ACTOR_ID)throw new Error("[Actor]: Cannot getSkin before create");return this.sourceInfo?this.sourceInfo.skin:j.__inject__.getSkin(this.id)}getAnimation(){if(this._id===l.ACTOR_ID)throw new Error("[Actor]: Cannot getAnimation before create");return j.__inject__.getAnimation(this.id)}getSpawnInfo(){if(this._id===l.ACTOR_ID)throw new Error("[Actor]: Cannot getSpawnInfo before create");return j.__inject__.getSpawnInfo(this.id)}static isValid(t){return j.__inject__.isValid(t)}static getInstance(t){return He.get(t)}static getInstances(){return[...He.values()]}static __inject__={create:Lc,destroy:wc,applyAnimation:jc,clearAnimations:Fc,getAnimation:bc,getFacingAngle:Bc,getHealth:Hc,getPos:Vc,getSkin:Dc,getSpawnInfo:vc,getVirtualWorld:Gc,isInvulnerable:Uc,isStreamedIn:Rc,isValid:Kc,setFacingAngle:kc,setHealth:xc,setInvulnerable:Wc,setPos:Mc,setSkin:Tc,setVirtualWorld:Oc}}H.onExit(({next:e})=>(j.getInstances().forEach(t=>t.destroy()),He.clear(),e()));const[rE]=m({name:"OnPlayerGiveDamageActor",identifier:"iifii",defaultValue:!1,beforeEach(e,t,i,a,r){return{player:c.getInstance(e),actor:j.getInstance(t),amount:i,weapon:a,bodyPart:r}}}),[nE]=m({name:"OnActorStreamIn",identifier:"ii",beforeEach(e,t){return{actor:j.getInstance(e),player:c.getInstance(t)}}}),[sE]=m({name:"OnActorStreamOut",identifier:"ii",beforeEach(e,t){return{actor:j.getInstance(e),player:c.getInstance(t)}}}),lE=Object.freeze({onPlayerGiveDamage:rE,onStreamIn:nE,onStreamOut:sE});class Ge{static set(t,i,a,r,n){return Ge.__inject__.set(t.id,i,a,r,n)}static disable(t){return Ge.__inject__.disable(t.id)}static isPlayerIn(t){return Ge.__inject__.isPlayerIn(t.id)}static isActive(t){return Ge.__inject__.isActive(t.id)}static get(t){return Ge.__inject__.get(t.id)}static __inject__={disable:zu,get:Si,isActive:yi,isPlayerIn:Qu,set:Yu}}const[oE]=m({name:"OnPlayerEnterCheckpoint",identifier:"i",beforeEach(e){return{player:c.getInstance(e)}}}),[_E]=m({name:"OnPlayerLeaveCheckpoint",identifier:"i",beforeEach(e){return{player:c.getInstance(e)}}}),cE=Object.freeze({onPlayerEnter:oE,onPlayerLeave:_E});class je{static set(t,i,a,r,n,s,o,_,d){return je.__inject__.set(t.id,i,a,r,n,s,o,_,d)}static disable(t){return je.__inject__.disable(t.id)}static isPlayerIn(t){return je.__inject__.isPlayerIn(t.id)}static isActive(t){return je.__inject__.isActive(t.id)}static get(t){return je.__inject__.get(t.id)}static __inject__={disable:$u,get:Ai,isActive:Ei,isPlayerIn:qu,set:Ju}}const[dE]=m({name:"OnPlayerEnterRaceCheckpoint",identifier:"i",beforeEach(e){return{player:c.getInstance(e)}}}),[hE]=m({name:"OnPlayerLeaveRaceCheckpoint",identifier:"i",beforeEach(e){return{player:c.getInstance(e)}}}),gE=Object.freeze({onPlayerEnter:dE,onPlayerLeave:hE});class w{sourceInfo=null;_player=null;_id=l.PICKUP_ID;get id(){return this._id}constructor(t,i){if(typeof t=="number"){if(t===l.PICKUP_ID)throw new Error("[Pickup]: Invalid id");i&&(this._player=i);const a=w.getInstance(t,i);if(a)return a;this._id=t,this.isGlobal()?We.set(this._id,this):i&&(J.has(i)||J.set(i,new Map),J.get(this.getPlayer()).set(this.id,this))}else this.sourceInfo=t,this._player=null}create(){if(!this.sourceInfo)throw new Error("[Pickup]: Cannot create with only id");if(this.id!==l.PICKUP_ID)throw new Error("[Pickup]: Cannot be created twice");const{model:t,type:i,virtualWorld:a,x:r,y:n,z:s,isStatic:o}=this.sourceInfo,_=this.getPlayer();if(o){if(_)throw new Error("[Pickup]: Cannot create static pickup for player");w.__inject__.addStatic(t,i,r,n,s,a)}else if(_){if(this._id=w.__inject__.createPlayer(_.id,t,i,r,n,s,a),_&&w.getInstances(_).length===W.MAX_PICKUPS||this._id===l.PICKUP_ID)throw new Error("[Pickup]: Cannot create player pickup");J.has(_)||J.set(_,new Map),J.get(_).set(this.id,this)}else{if(this._id=w.__inject__.create(t,i,r,n,s,a),w.getInstances().length===W.MAX_PICKUPS||this._id===l.PICKUP_ID)throw new Error("[Pickup]: Cannot create pickup");We.set(this.id,this)}return this}destroy(){if(this.sourceInfo&&this.sourceInfo.isStatic)throw new Error("[Pickup]: Cannot destroy static pickup");if(this.id===l.PICKUP_ID)throw new Error("[Pickup]: Cannot destroy before create");const t=this.getPlayer();if(!t)D.skip||w.__inject__.destroy(this.id),We.delete(this.id);else if(D.skip||w.__inject__.destroyPlayer(t.id,this.id),J.has(t)){const i=J.get(t);i.delete(this.id),i.size||J.delete(t)}this._id=l.PICKUP_ID}isGlobal(){return!(this.sourceInfo?this.sourceInfo.player:this._player)}isPlayer(){return!this.isGlobal()}getPlayer(){return this._player?this._player:this.sourceInfo&&this.sourceInfo.player?this.sourceInfo.player:null}getPlayerId(){const t=this.getPlayer();return t?t.id:l.PLAYER_ID}isValid(){if(D.skip&&this.id!==l.PICKUP_ID)return!0;if(this.id===l.PICKUP_ID)return!1;const t=this.getPlayer();return t?w.isValidPlayer(t.id,this.id):w.isValidGlobal(this.id)}isStreamedIn(t){if(this.id===l.PICKUP_ID)return!1;const i=this.getPlayer();return i?w.__inject__.isStreamedInPlayer(i.id,this.id):w.__inject__.isStreamedIn(t.id,this.id)}getPos(){const t=this.getPlayer();return t?w.__inject__.getPosPlayer(t.id,this.id):w.__inject__.getPos(this.id)}getModel(){if(this.id===l.PICKUP_ID)return 0;const t=this.getPlayer();return t?w.__inject__.getModelPlayer(t.id,this.id):w.__inject__.getModel(this.id)}getType(){if(this.id===l.PICKUP_ID)return 0;const t=this.getPlayer();return t?w.__inject__.getTypePlayer(t.id,this.id):w.__inject__.getType(this.id)}getVirtualWorld(){if(this.id===l.PICKUP_ID)return 0;const t=this.getPlayer();return t?w.__inject__.getVirtualWorldPlayer(t.id,this.id):w.__inject__.getVirtualWorld(this.id)}setPos(t,i,a,r){if(this.id===l.PICKUP_ID)return!1;const n=this.getPlayer();return n?w.__inject__.setPosPlayer(n.id,this.id,t,i,a,r):w.__inject__.setPos(this.id,t,i,a,r)}setModel(t,i=!0){if(this.id===l.PICKUP_ID)return!1;const a=this.getPlayer();return a?w.__inject__.setModelPlayer(a.id,this.id,t,i):w.__inject__.setModel(this.id,t,i)}setType(t,i=!0){if(this.id===l.PICKUP_ID)return!1;const a=this.getPlayer();return a?w.__inject__.setTypePlayer(a.id,this.id,t,i):w.__inject__.setType(this.id,t,i)}setVirtualWorld(t){if(this.id===l.PICKUP_ID)return!1;const i=this.getPlayer();return i?w.__inject__.setVirtualWorldPlayer(i.id,this.id,t):w.__inject__.setVirtualWorld(this.id,t)}showForPlayer(t){if(this.id===l.PICKUP_ID)return!1;if(this.getPlayer())throw new Error("[Pickup]: Cannot show for player pickup");return w.__inject__.showForPlayer(t.id,this.id)}hideForPlayer(t){if(this.id===l.PICKUP_ID)return!1;if(this.getPlayer())throw new Error("[Pickup]: Cannot hide for player pickup");return w.__inject__.hideForPlayer(t.id,this.id)}isHiddenForPlayer(t){if(this.id===l.PICKUP_ID)return!1;if(this.isPlayer())throw new Error("[Pickup]: Cannot isHiddenForPlayer for player pickup");return w.__inject__.isHiddenForPlayer(t.id,this.id)}static isValidPlayer(t,i){return w.__inject__.isValidPlayer(t,i)}static isValidGlobal(t){return w.__inject__.isValidGlobal(t)}static getInstance(t,i){if(!i)return We.get(t);if(i.id!==l.PLAYER_ID)return J.get(i)?.get(t)}static getInstances(t){return t?t.id===l.PLAYER_ID?[]:[...J.get(t)?.values()||[]]:[...We.values()]}static getPlayersInstances(){return Array.from(J.entries()).map(([t,i])=>[t,Array.from(i.values())])}static __inject__={create:SI,addStatic:yI,destroy:EI,isStreamedIn:_I,getPos:cI,getModel:dI,getType:hI,getVirtualWorld:gI,setPos:uI,setModel:mI,setType:fI,setVirtualWorld:PI,showForPlayer:pI,hideForPlayer:II,isHiddenForPlayer:CI,isValidGlobal:oI,createPlayer:AI,destroyPlayer:NI,isStreamedInPlayer:TI,getPosPlayer:vI,getModelPlayer:OI,getTypePlayer:GI,getVirtualWorldPlayer:jI,setPosPlayer:bI,setModelPlayer:LI,setTypePlayer:wI,setVirtualWorldPlayer:RI,isValidPlayer:DI}}Ze.onDisconnect(({player:e,next:t})=>(J.has(e)&&(w.getInstances(e).forEach(i=>{i.isValid()&&i.destroy()}),J.delete(e)),t())),H.onExit(({next:e})=>(w.getInstances().forEach(t=>t.destroy()),w.getPlayersInstances().map(([,t])=>t).flat().forEach(t=>t.destroy()),We.clear(),J.clear(),e()));const[uE]=m({name:"OnPlayerPickUpPickup",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),pickup:w.getInstance(t)}}}),[mE]=m({name:"OnPickupStreamIn",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),pickup:w.getInstance(t)}}}),[fE]=m({name:"OnPickupStreamOut",identifier:"ii",beforeEach(e,t){return{player:c.getInstance(e),pickup:w.getInstance(t)}}}),[PE]=m({name:"OnPlayerPickUpPlayerPickup",identifier:"ii",beforeEach(e,t){const i=c.getInstance(e);return{player:i,pickup:w.getInstance(t,i)}}}),[pE]=m({name:"OnPlayerPickupStreamIn",identifier:"ii",beforeEach(e,t){const i=c.getInstance(e);return{player:i,pickup:w.getInstance(t,i)}}}),[IE]=m({name:"OnPlayerPickupStreamOut",identifier:"ii",beforeEach(e,t){const i=c.getInstance(e);return{player:i,pickup:w.getInstance(t,i)}}}),CE=Object.freeze({onPlayerPickUpGlobal:uE,onStreamInGlobal:mE,onStreamOutGlobal:fE,onPlayerPickupPlayer:PE,onStreamInPlayer:pE,onStreamOutPlayer:IE});class R{sourceInfo=null;_id=l._3DTEXT_ID;_player=null;get id(){return this._id}constructor(t,i){if(typeof t=="number"){if(t===l.PLAYER_3DTEXT_ID)throw new Error("[TextLabel]: Invalid id");i&&(this._player=i);const a=R.getInstance(t,i);if(a)return a;this._id=t,this.isGlobal()?Ue.set(this._id,this):i&&($.has(i)||$.set(i,new Map),$.get(this.getPlayer()).set(this.id,this))}else this.sourceInfo=t,this._player=null}create(){if(!this.sourceInfo)throw new Error("[TextLabel]: Cannot create with only id");if(this.id!==l._3DTEXT_ID)throw new Error("[TextLabel]: Cannot create again");const{charset:t="utf8",text:i,color:a,x:r,y:n,z:s,drawDistance:o,virtualWorld:_,testLOS:d,attachedPlayer:h,attachedVehicle:u}=this.sourceInfo;if(this.isGlobal()){if(this._id=R.__inject__.create(t,i,a,r,n,s,o,_,d),this.id===l._3DTEXT_ID||R.getInstances().length===W.MAX_3DTEXT_GLOBAL)throw new Error("[TextLabel]: Cannot create textLabel");return Ue.set(this._id,this),this}const I=this.getPlayerId();if(I===l.PLAYER_ID)return this;const S=this.getPlayer();if(this._id=R.__inject__.createPlayer(t,I,i,a,r,n,s,o,typeof h>"u"?l.PLAYER_ID:h.id,typeof u>"u"?l.VEHICLE_ID:u.id,d),this.id===l._3DTEXT_ID||R.getInstances(S).length===W.MAX_3DTEXT_PLAYER)throw new Error("[TextLabel]: Cannot create playerTextLabel");return $.has(S)||$.set(S,new Map),$.get(this.getPlayer()).set(this.id,this),this}destroy(){if(this.id===l._3DTEXT_ID)throw new Error("[TextLabel]: Cannot destroy the textLabel before create");if(this.isGlobal())D.skip||R.__inject__.delete(this.id),Ue.delete(this.id);else{const t=this.getPlayerId();if(t===l.PLAYER_ID)return this;const i=this.getPlayer();if(D.skip||R.__inject__.deletePlayer(t,this.id),$.has(i)){const a=$.get(i);a.delete(this.id),a.size===0&&$.delete(i)}}return this._id=l._3DTEXT_ID,this}isGlobal(){return!(this.sourceInfo?this.sourceInfo.player:this._player)}isPlayer(){return!this.isGlobal()}getPlayer(){return this._player?this._player:this.sourceInfo&&this.sourceInfo.player?this.sourceInfo.player:null}getPlayerId(){const t=this.getPlayer();return t?t.id:l.PLAYER_ID}isValid(){return D.skip&&this.id!==l._3DTEXT_ID?!0:this.isGlobal()?R.isValid(this.id):R.isValid(this.id,this.getPlayerId())}attachToPlayer(t,i,a,r){if(this.id===l._3DTEXT_ID)return!1;if(!this.isGlobal())throw new Error("[TextLabel]: Cannot attach to player, textLabel is not global");return R.__inject__.attachToPlayer(this.id,t.id,i,a,r)}attachToVehicle(t,i,a,r){if(this.id===l._3DTEXT_ID)return!1;if(!this.isGlobal())throw new Error("[TextLabel]: Cannot attach to vehicle, textLabel is not global");return R.__inject__.attachToVehicle(this.id,t.id,i,a,r)}updateText(t,i,a="utf8"){return this.id===l._3DTEXT_ID?!1:this.isGlobal()?R.__inject__.updateText(a,this.id,t,i):R.__inject__.updatePlayerText(a,this.getPlayerId(),this.id,t,i)}isStreamedIn(t){if(this.id===l._3DTEXT_ID)return!1;if(!this.isGlobal())throw new Error("[TextLabel]: Cannot check stream in, textLabel is not global");return R.__inject__.isStreamedIn(this.id,t.id)}getText(t=this.sourceInfo?.charset||"utf8"){return this.isGlobal()?R.__inject__.getText(t,this.id):R.__inject__.getPlayerText(t,this.getPlayerId(),this.id)}getColor(){return this.isGlobal()?R.__inject__.getColor(this.id):R.__inject__.getPlayerColor(this.getPlayerId(),this.id)}getPos(){return this.isGlobal()?R.__inject__.getPos(this.id):R.__inject__.getPlayerPos(this.getPlayerId(),this.id)}setDrawDistance(t){return this.id===l._3DTEXT_ID?!1:this.isGlobal()?R.__inject__.setDrawDistance(this.id,t):R.__inject__.setPlayerDrawDistance(this.getPlayerId(),this.id,t)}getDrawDistance(){return this.isGlobal()?R.__inject__.getDrawDistance(this.id):R.__inject__.getPlayerDrawDistance(this.getPlayerId(),this.id)}getLOS(){return this.id===l._3DTEXT_ID?!1:this.isGlobal()?R.__inject__.getLOS(this.id):R.__inject__.getPlayerLOS(this.getPlayerId(),this.id)}setLOS(t){return this.id===l._3DTEXT_ID?!1:this.isGlobal()?R.__inject__.setLOS(this.id,t):R.__inject__.setPlayerLOS(this.getPlayerId(),this.id,t)}getVirtualWorld(){return this.id===l._3DTEXT_ID?0:this.isGlobal()?R.__inject__.getVirtualWorld(this.id):R.__inject__.getPlayerVirtualWorld(this.getPlayerId(),this.id)}setVirtualWorld(t){return this.id===l._3DTEXT_ID?!1:this.isGlobal()?R.__inject__.setVirtualWorld(this.id,t):R.__inject__.setPlayerVirtualWorld(this.getPlayerId(),this.id,t)}getAttachedData(){return this.isGlobal()?R.__inject__.getAttachedData(this.id):R.__inject__.getPlayerAttachedData(this.getPlayerId(),this.id)}static isValid(t,i){return i===l.PLAYER_ID?!1:typeof i>"u"?R.__inject__.isValid(t):R.__inject__.isValidPlayer(i,t)}static getInstance(t,i){if(!i)return Ue.get(t);if(i.id!==l.PLAYER_ID)return $.get(i)?.get(t)}static getInstances(t){return t?t.id===l.PLAYER_ID?[]:[...$.get(t)?.values()||[]]:[...Ue.values()]}static getPlayersInstances(){return Array.from($.entries()).map(([t,i])=>[t,Array.from(i.values())])}static __inject__={create:eC,createPlayer:tC,getText:rC,getPlayerText:nC,updateText:iC,updatePlayerText:aC,delete:Sm,attachToPlayer:Em,attachToVehicle:Am,isStreamedIn:hm,getColor:gm,getPos:um,setDrawDistance:mm,getDrawDistance:fm,getLOS:Pm,setLOS:pm,getVirtualWorld:Cm,setVirtualWorld:Im,getAttachedData:ym,isValid:dm,deletePlayer:jm,getPlayerColor:Dm,getPlayerPos:Tm,setPlayerDrawDistance:vm,getPlayerDrawDistance:bm,getPlayerLOS:Lm,setPlayerLOS:wm,getPlayerVirtualWorld:Rm,setPlayerVirtualWorld:Om,getPlayerAttachedData:Gm,isValidPlayer:Nm}}Ze.onDisconnect(({player:e,next:t})=>($.has(e)&&(R.getInstances(e).forEach(i=>{i.isValid()&&i.destroy()}),$.delete(e)),t())),H.onExit(({next:e})=>(R.getInstances().forEach(t=>t.destroy()),R.getPlayersInstances().map(([,t])=>t).flat().forEach(t=>t.destroy()),Ue.clear(),$.clear(),e()));function yE(e,t){return(e&t)===t}function SE(e,t,i){return(e&i)===i&&(t&i)!==i}function EE(e,t){return!!(e&t)}function AE(e,t,i){return(e&i)!==i&&(t&i)===i}function NE(e){const t=new Set,i=e.prototype,a=Object.getOwnPropertyNames(i).filter(n=>typeof i[n]=="function"&&n!=="constructor").reduce((n,s)=>(n[s]=i[s],n),{});function r(n,s){if(t.has(n))throw new Error(`Method '${String(n)}' of class '${e.name}' has already been hooked. Each method can only be hooked once per defineHooks call. `);if(typeof Reflect.get(i,n)!="function")throw new Error(`Invalid method: ${String(n)}`);return Reflect.set(i,n,s),t.add(n),s}return[a,r]}export{j as Actor,lE as ActorEvent,vt as ArtworkEnum,Bt as BodyPartsEnum,xt as BoneIdsEnum,Jt as BulletHitTypesEnum,Qe as CameraCutStylesEnum,kt as CameraModesEnum,Kt as CarModTypeEnum,cE as CheckPointEvent,Ge as Checkpoint,bt as ClickSourcesEnum,wt as ConnectionStatusEnum,ft as DamageDeathReasonEnum,U as Dialog,gt as DialogStylesEnum,ie as Dynamic3DTextLabel,hS as Dynamic3DTextLabelEvent,F as DynamicActor,lS as DynamicActorEvent,v as DynamicArea,IS as DynamicAreaEvent,Jy as DynamicCheckPointEvent,X as DynamicCheckpoint,le as DynamicMapIcon,My as DynamicMapIconEvent,O as DynamicObject,Ry as DynamicObjectEvent,re as DynamicPickup,Wy as DynamicPickupEvent,Z as DynamicRaceCP,aS as DynamicRaceCPEvent,_e as E_STREAMER,Lt as EditResponseTypesEnum,ut as FightingStylesEnum,Ht as ForceSyncEnum,H as GameMode,Oe as GameText,b as GangZone,YS as GangZoneEvent,E as I18n,l as InvalidEnum,Rt as KeysEnum,Zt as LandingGearStateEnum,W as LimitsEnum,ct as MapIconStyles,Vt as MapIconStylesEnum,Ot as MarkerModesEnum,qt as MaterialTextAlign,ot as MaterialTextSizes,x as Menu,xS as MenuEvent,ge as NPCEntityCheckEnum,Fe as NPCMoveSpeedEnum,fe as NPCMoveTypeEnum,Gt as NPCPlaybackEnum,jt as NPCRecordStatusEnum,q as NetStats,g as Npc,VS as NpcEvent,Ye as NpcNode,Je as NpcPath,ze as NpcRecord,Mt as ObjectMaterialAlignmentEnum,Ft as ObjectMaterialTextSizeEnum,C as ObjectMp,aE as ObjectMpEvent,CE as PickUpEvent,w as Pickup,c as Player,Ze as PlayerEvent,qe as PlayerStateEnum,je as RaceCheckpoint,gE as RaceCpEvent,$t as RecordTypesEnum,Pe as SelectObjectTypesEnum,Wt as SpecialActionsEnum,st as SpectateModesEnum,A as Streamer,Qt as StreamerAreaTypes,k as StreamerDistances,T as StreamerItemTypes,P as StreamerMiscellaneous,lt as StreamerObjectTypes,f as TextDraw,Ut as TextDrawAlignEnum,$S as TextDrawEvent,et as TextDrawFontsEnum,R as TextLabel,p as Vehicle,Sy as VehicleEvent,Xt as VehicleModelInfoEnum,G as VehicleParamsEnum,Yt as WeaponEnum,zt as WeaponSkillsEnum,mt as WeaponStatesEnum,vi as animateLib,m as defineEvent,NE as defineHooks,FI as getAnimateDurationByLibName,yE as isHolding,SE as isPressed,EE as isPressing,AE as isReleased,yt as isValidAnimateLib,St as isValidAnimateName,N as rgba,is as useTrigger,as as withTriggerOptions};
1
+ import"node:module";import e from"node:util";import t from"iconv-lite";var n=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);let r=function(e){return 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}({}),i=function(e){return e[e.SCOREBOARD=0]=`SCOREBOARD`,e}({}),a=function(e){return 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}({}),o=function(e){return e[e.UNKNOWN=-1]=`UNKNOWN`,e[e.CANCEL=0]=`CANCEL`,e[e.FINAL=1]=`FINAL`,e[e.UPDATE=2]=`UPDATE`,e}({}),s=function(e){return 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}({}),c=function(e){return e[e.NO_TEAM=255]=`NO_TEAM`,e[e.PLAYER_ID=65535]=`PLAYER_ID`,e[e.NPC_ID=-1]=`NPC_ID`,e[e.PATH_ID=-1]=`PATH_ID`,e[e.NODE_ID=-1]=`NODE_ID`,e[e.RECORD_ID=-1]=`RECORD_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[e.PICKUP_ID=-1]=`PICKUP_ID`,e}({}),l=function(e){return 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}({}),u=function(e){return e[e.MAX_PLAYER_NAME=24]=`MAX_PLAYER_NAME`,e[e.MAX_PLAYERS=1e3]=`MAX_PLAYERS`,e[e.MAX_VEHICLES=2e3]=`MAX_VEHICLES`,e[e.MAX_ACTORS=1e3]=`MAX_ACTORS`,e[e.MAX_OBJECTS=1e3]=`MAX_OBJECTS`,e[e.MAX_GANG_ZONES=1024]=`MAX_GANG_ZONES`,e[e.MAX_TEXT_DRAWS=2048]=`MAX_TEXT_DRAWS`,e[e.MAX_PLAYER_TEXT_DRAWS=256]=`MAX_PLAYER_TEXT_DRAWS`,e[e.MAX_MENUS=128]=`MAX_MENUS`,e[e.MAX_MENU_ROW=12]=`MAX_MENU_ROW`,e[e.MAX_MENU_COL=2]=`MAX_MENU_COL`,e[e.MAX_3DTEXT_GLOBAL=1024]=`MAX_3DTEXT_GLOBAL`,e[e.MAX_3DTEXT_PLAYER=1024]=`MAX_3DTEXT_PLAYER`,e[e.MAX_PICKUPS=4096]=`MAX_PICKUPS`,e[e.MAX_PLAYER_ATTACHED_OBJECTS=10]=`MAX_PLAYER_ATTACHED_OBJECTS`,e[e.MAX_CHATBUBBLE_LENGTH=144]=`MAX_CHATBUBBLE_LENGTH`,e[e.NPC_MAX_NODES=64]=`NPC_MAX_NODES`,e[e.MAX_NPCS=1e3]=`MAX_NPCS`,e[e.MAX_WORLD_BOUNDS=2e4]=`MAX_WORLD_BOUNDS`,e[e.MIN_WORLD_BOUNDS=-2e4]=`MIN_WORLD_BOUNDS`,e[e.MAX_TEXTDRAW_STR_LENGTH=800]=`MAX_TEXTDRAW_STR_LENGTH`,e[e.MAX_VEHICLE_CARRIAGES=3]=`MAX_VEHICLE_CARRIAGES`,e[e.MAX_GAMETEXT_STYLES=16]=`MAX_GAMETEXT_STYLES`,e[e.MIN_CUSTOM_SKIN_ID=20001]=`MIN_CUSTOM_SKIN_ID`,e[e.MAX_CUSTOM_SKIN_ID=3e4]=`MAX_CUSTOM_SKIN_ID`,e[e.MIN_CUSTOM_OBJECT_ID=-3e4]=`MIN_CUSTOM_OBJECT_ID`,e[e.MAX_CUSTOM_OBJECT_ID=-1e3]=`MAX_CUSTOM_OBJECT_ID`,e}({}),d=function(e){return e[e.OFF=0]=`OFF`,e[e.GLOBAL=1]=`GLOBAL`,e[e.STREAMED=2]=`STREAMED`,e}({}),f=function(e){return e[e.NONE=1]=`NONE`,e[e.DRIVER=2]=`DRIVER`,e[e.ONFOOT=3]=`ONFOOT`,e}({}),p=function(e){return e[e.NONE=0]=`NONE`,e[e.START=1]=`START`,e[e.PAUSE=2]=`PAUSE`,e}({}),m=function(e){return 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}({}),h=function(e){return 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}({}),g=function(e){return e[e.AUTO=-1]=`AUTO`,e[e.WALK=.1552086]=`WALK`,e[e.JOG=.56444]=`JOG`,e[e.SPRINT=.926784]=`SPRINT`,e}({}),ee=function(e){return 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}({}),te=function(e){return e[e.LEFT=0]=`LEFT`,e[e.CENTER=1]=`CENTER`,e[e.RIGHT=2]=`RIGHT`,e}({}),_=function(e){return e[e.UNKNOWN=-1]=`UNKNOWN`,e[e.GLOBAL_OBJECT=1]=`GLOBAL_OBJECT`,e[e.PLAYER_OBJECT=2]=`PLAYER_OBJECT`,e}({}),ne=function(e){return 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}({}),v=function(e){return 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}({}),y=function(e){return e[e.MOVE=1]=`MOVE`,e[e.CUT=2]=`CUT`,e}({}),re=function(e){return 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}({}),ie=function(e){return e[e.NORMAL=1]=`NORMAL`,e[e.FIXED=2]=`FIXED`,e[e.SIDE=3]=`SIDE`,e}({}),ae=function(e){return 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}({}),oe=function(e){return 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}({}),se=function(e){return 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}({}),ce=function(e){return e[e.UNKNOWN=-1]=`UNKNOWN`,e[e.NONE=0]=`NONE`,e[e.ALL=1]=`ALL`,e[e.OTHER=2]=`OTHER`,e}({}),le=function(e){return 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=function(e){return 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}({}),de=function(e){return e[e.LEFT=1]=`LEFT`,e[e.CENTER=2]=`CENTER`,e[e.RIGHT=3]=`RIGHT`,e}({}),fe=function(e){return 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}({}),b=function(e){return e[e.UNSET=-1]=`UNSET`,e[e.OFF=0]=`OFF`,e[e.ON=1]=`ON`,e}({}),pe=function(e){return 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}({}),me=function(e){return e[e.DOWN=0]=`DOWN`,e[e.UP=1]=`UP`,e}({}),he=function(e){return e[e.UNKNOWN=-1]=`UNKNOWN`,e[e.REASON_VEHICLE=49]=`REASON_VEHICLE`,e[e.REASON_DROWN=53]=`REASON_DROWN`,e[e.REASON_COLLISION=54]=`REASON_COLLISION`,e[e.REASON_SPLAT=54]=`REASON_SPLAT`,e[e.REASON_CONNECT=200]=`REASON_CONNECT`,e[e.REASON_DISCONNECT=200]=`REASON_DISCONNECT`,e[e.REASON_SUICIDE=255]=`REASON_SUICIDE`,e[e.FIST=0]=`FIST`,e[e.BRASSKNUCKLE=1]=`BRASSKNUCKLE`,e[e.GOLFCLUB=2]=`GOLFCLUB`,e[e.NIGHTSTICK=3]=`NIGHTSTICK`,e[e.KNIFE=4]=`KNIFE`,e[e.BAT=5]=`BAT`,e[e.SHOVEL=6]=`SHOVEL`,e[e.POOLSTICK=7]=`POOLSTICK`,e[e.KATANA=8]=`KATANA`,e[e.CHAINSAW=9]=`CHAINSAW`,e[e.DILDO=10]=`DILDO`,e[e.DILDO2=11]=`DILDO2`,e[e.VIBRATOR=12]=`VIBRATOR`,e[e.VIBRATOR2=13]=`VIBRATOR2`,e[e.FLOWER=14]=`FLOWER`,e[e.CANE=15]=`CANE`,e[e.GRENADE=16]=`GRENADE`,e[e.TEARGAS=17]=`TEARGAS`,e[e.MOLTOV=18]=`MOLTOV`,e[e.COLT45=22]=`COLT45`,e[e.SILENCED=23]=`SILENCED`,e[e.DEAGLE=24]=`DEAGLE`,e[e.SHOTGUN=25]=`SHOTGUN`,e[e.SAWEDOFF=26]=`SAWEDOFF`,e[e.SHOTGSPA=27]=`SHOTGSPA`,e[e.UZI=28]=`UZI`,e[e.MP5=29]=`MP5`,e[e.AK47=30]=`AK47`,e[e.M4=31]=`M4`,e[e.TEC9=32]=`TEC9`,e[e.RIFLE=33]=`RIFLE`,e[e.SNIPER=34]=`SNIPER`,e[e.ROCKETLAUNCHER=35]=`ROCKETLAUNCHER`,e[e.HEATSEEKER=36]=`HEATSEEKER`,e[e.FLAMETHROWER=37]=`FLAMETHROWER`,e[e.MINIGUN=38]=`MINIGUN`,e[e.SATCHEL=39]=`SATCHEL`,e[e.BOMB=40]=`BOMB`,e[e.SPRAYCAN=41]=`SPRAYCAN`,e[e.FIREEXTINGUISHER=42]=`FIREEXTINGUISHER`,e[e.CAMERA=43]=`CAMERA`,e[e.NIGHT_VISION_GOGGLES=44]=`NIGHT_VISION_GOGGLES`,e[e.THERMAL_GOGGLES=45]=`THERMAL_GOGGLES`,e[e.PARACHUTE=46]=`PARACHUTE`,e}({}),ge=function(e){return 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}({}),_e=function(e){return 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}({}),ve=function(e){return 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}({}),ye=function(e){return 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}({}),be=function(e){return e[e.NONE=0]=`NONE`,e[e.DRIVER=1]=`DRIVER`,e[e.ONFOOT=2]=`ONFOOT`,e}({}),xe=function(e){return 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}({}),x=function(e){return 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}({}),S=function(e){return 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}({}),C=function(e){return 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}({}),Se=function(e){return e[e.GLOBAL=0]=`GLOBAL`,e[e.PLAYER=1]=`PLAYER`,e[e.DYNAMIC=2]=`DYNAMIC`,e}({}),Ce=function(e){return 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}({}),we=function(e){return e[e.LEFT=0]=`LEFT`,e[e.CENTER=1]=`CENTER`,e[e.RIGHT=2]=`RIGHT`,e}({}),Te=function(e){return 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}({});Number.MIN_VALUE,Number.MAX_VALUE;const Ee=e=>samp.callNative(`DestroyDynamic3DTextLabel`,`i`,e),De=e=>!!samp.callNative(`IsValidDynamic3DTextLabel`,`i`,e),Oe=(e,t,n,r,i,a=!0,o=100,s=0,c=-1,l=-1,u=x.ACTOR_SD,d=-1,f=0)=>samp.callNative(`CreateDynamicActor`,`iffffifiiifii`,e,t,n,r,i,a,o,s,c,l,u,d,f),ke=e=>samp.callNative(`DestroyDynamicActor`,`i`,e),Ae=e=>!!samp.callNative(`IsValidDynamicActor`,`i`,e),je=(e,t)=>!!samp.callNative(`IsDynamicActorStreamedIn`,`ii`,e,t),Me=e=>samp.callNative(`GetDynamicActorVirtualWorld`,`i`,e),Ne=(e,t)=>samp.callNative(`SetDynamicActorVirtualWorld`,`ii`,e,t),Pe=(e,t,n,r,i,a,o,s,c)=>samp.callNative(`ApplyDynamicActorAnimation`,`issfiiiii`,e,t,n,r,i,a,o,s,c),Fe=e=>samp.callNative(`ClearDynamicActorAnimations`,`i`,e),Ie=e=>{let[t,n]=samp.callNative(`GetDynamicActorFacingAngle`,`iF`,e);return{angle:t,ret:n}},Le=(e,t)=>samp.callNative(`SetDynamicActorFacingAngle`,`if`,e,t),Re=e=>{let[t,n,r,i]=samp.callNative(`GetDynamicActorPos`,`iFFF`,e);return{x:t,y:n,z:r,ret:i}},ze=(e,t,n,r)=>samp.callNative(`SetDynamicActorPos`,`ifff`,e,t,n,r),Be=e=>{let[t,n]=samp.callNative(`GetDynamicActorHealth`,`iF`,e);return{health:t,ret:n}},Ve=(e,t)=>samp.callNative(`SetDynamicActorHealth`,`if`,e,t),He=(e,t=!0)=>samp.callNative(`SetDynamicActorInvulnerable`,`ii`,e,t),Ue=e=>!!samp.callNative(`IsDynamicActorInvulnerable`,`i`,e),We=e=>samp.callNative(`GetPlayerTargetDynamicActor`,`i`,e),Ge=e=>samp.callNative(`GetPlayerCameraTargetDynActor`,`i`,e),Ke=e=>{let[t,n,r=0,i=0,a=0,o=0,s=0,c=0,l]=samp.callNative(`GetDynamicActorAnimation`,`iSSFIIIIIii`,e,32,32);return{animLib:t,animName:n,fDelta:r,loop:i,lockX:a,lockY:o,freeze:s,time:c,ret:l}},qe=(e,t,n,r=-1,i=-1,a=-1,o=0)=>samp.callNative(`CreateDynamicCircle`,`fffiiii`,e,t,n,r,i,a,o),Je=(e,t,n,r,i,a=-1,o=-1,s=-1,c=0)=>samp.callNative(`CreateDynamicCylinder`,`fffffiiii`,e,t,n,r,i,a,o,s,c),Ye=(e,t,n,r,i=-1,a=-1,o=-1,s=0)=>samp.callNative(`CreateDynamicSphere`,`ffffiiii`,e,t,n,r,i,a,o,s),Xe=(e,t,n,r,i=-1,a=-1,o=-1,s=0)=>samp.callNative(`CreateDynamicRectangle`,`ffffiiii`,e,t,n,r,i,a,o,s),Ze=(e,t,n,r,i,a,o=-1,s=-1,c=-1,l=0)=>samp.callNative(`CreateDynamicCuboid`,`ffffffiiii`,e,t,n,r,i,a,o,s,c,l),Qe=(e,t=Number.MIN_VALUE,n=Number.MAX_VALUE,r=-1,i=-1,a=-1,o=0)=>samp.callNative(`CreateDynamicPolygon`,`affiiiii`,e,t,n,e.length,r,i,a,o),$e=e=>samp.callNative(`DestroyDynamicArea`,`i`,e),et=e=>!!samp.callNative(`IsValidDynamicArea`,`i`,e),tt=e=>samp.callNative(`GetDynamicAreaType`,`i`,e),nt=e=>{let[t,n]=samp.callNative(`GetDynamicPolygonPoints`,`iAi`,e,rt(e));return{points:t,ret:n}},rt=e=>samp.callNative(`GetDynamicPolygonNumberPoints`,`i`,e),it=(e,t,n=!1)=>!!samp.callNative(`IsPlayerInDynamicArea`,`iii`,e,t,n),at=(e,t=!1)=>!!samp.callNative(`IsPlayerInAnyDynamicArea`,`ii`,e,t),ot=(e,t=!1)=>!!samp.callNative(`IsAnyPlayerInDynamicArea`,`ii`,e,t),st=(e=!1)=>!!samp.callNative(`IsAnyPlayerInAnyDynamicArea`,`i`,e),ct=e=>{let[t,n]=samp.callNative(`GetPlayerDynamicAreas`,`iAi`,e,lt(e));return{areas:t,ret:n}},lt=e=>samp.callNative(`GetPlayerNumberDynamicAreas`,`i`,e),ut=(e,t,n,r)=>!!samp.callNative(`IsPointInDynamicArea`,`ifff`,e,t,n,r),dt=(e,t,n)=>!!samp.callNative(`IsPointInAnyDynamicArea`,`fff`,e,t,n),ft=(e,t,n,r,i,a,o)=>!!samp.callNative(`IsLineInDynamicArea`,`iffffff`,e,t,n,r,i,a,o),pt=(e,t,n,r,i,a)=>!!samp.callNative(`IsLineInAnyDynamicArea`,`ffffff`,e,t,n,r,i,a),mt=(e,t,n)=>{let[r,i]=samp.callNative(`GetDynamicAreasForPoint`,`fffAi`,e,t,n,ht(e,t,n));return{areas:r,ret:i}},ht=(e,t,n)=>samp.callNative(`GetNumberDynamicAreasForPoint`,`fff`,e,t,n),gt=(e,t,n,r,i,a)=>{let[o,s]=samp.callNative(`GetDynamicAreasForLine`,`ffffffAi`,e,t,n,r,i,a,_t(e,t,n,r,i,a));return{areas:o,ret:s}},_t=(e,t,n,r,i,a)=>samp.callNative(`GetNumberDynamicAreasForLine`,`ffffff`,e,t,n,r,i,a),vt=(e,t,n=Se.DYNAMIC,r=65535,i=0,a=0,o=0)=>samp.callNative(`AttachDynamicAreaToObject`,`iiiifff`,e,t,n,r,i,a,o),yt=(e,t,n=0,r=0,i=0)=>samp.callNative(`AttachDynamicAreaToPlayer`,`iifff`,e,t,n,r,i),bt=(e,t,n=0,r=0,i=0)=>samp.callNative(`AttachDynamicAreaToVehicle`,`iifff`,e,t,n,r,i),xt=(e,t)=>samp.callNative(`ToggleDynAreaSpectateMode`,`ii`,e,t),St=e=>!!samp.callNative(`IsToggleDynAreaSpectateMode`,`i`,e),Ct=(e,t,n,r,i=-1,a=-1,o=-1,s=x.CP_SD,c=-1,l=0)=>samp.callNative(`CreateDynamicCP`,`ffffiiifii`,e,t,n,r,i,a,o,s,c,l),wt=e=>samp.callNative(`DestroyDynamicCP`,`i`,e),Tt=e=>!!samp.callNative(`IsValidDynamicCP`,`i`,e),Et=(e,t,n)=>samp.callNative(`TogglePlayerDynamicCP`,`iii`,e,t,n),Dt=(e,t)=>samp.callNative(`TogglePlayerAllDynamicCPs`,`ii`,e,t),Ot=(e,t)=>!!samp.callNative(`IsPlayerInDynamicCP`,`ii`,e,t),kt=e=>samp.callNative(`GetPlayerVisibleDynamicCP`,`i`,e),At=(e,t,n)=>{let[r,i]=samp.callNative(`Streamer_GetFloatData`,`iiiF`,e,t,n);return{val:r,ret:i}},jt=(e,t,n,r)=>samp.callNative(`Streamer_SetFloatData`,`iiif`,e,t,n,r),Mt=(e,t,n)=>samp.callNative(`Streamer_GetIntData`,`iii`,e,t,n),Nt=(e,t,n,r)=>samp.callNative(`Streamer_SetIntData`,`iiii`,e,t,n,r),Pt=(e,t,n)=>{let[r,i]=samp.callNative(`Streamer_GetArrayData`,`iiiAi`,e,t,n,zt(e,t,n));return{arrayData:r,ret:i}},Ft=(e,t,n,r)=>samp.callNative(`Streamer_SetArrayData`,`iiiai`,e,t,n,r,r.length),It=(e,t,n,r)=>!!samp.callNative(`Streamer_IsInArrayData`,`iiii`,e,t,n,r),Lt=(e,t,n,r)=>samp.callNative(`Streamer_AppendArrayData`,`iiii`,e,t,n,r),Rt=(e,t,n,r)=>samp.callNative(`Streamer_RemoveArrayData`,`iiii`,e,t,n,r),zt=(e,t,n)=>samp.callNative(`Streamer_GetArrayDataLength`,`iii`,e,t,n),Bt=e=>samp.callNative(`Streamer_GetUpperBound`,`i`,e);let Vt=function(e){return 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}({});const Ht=(e,t,n,r,i,a=-1,o=-1,s=-1,c=x.MAP_ICON_SD,l=Vt.LOCAL,u=-1,d=0)=>samp.callNative(`CreateDynamicMapIcon`,`fffiiiiifiii`,e,t,n,r,i,a,o,s,c,l,u,d),Ut=e=>samp.callNative(`DestroyDynamicMapIcon`,`i`,e),Wt=e=>!!samp.callNative(`IsValidDynamicMapIcon`,`i`,e),Gt=(e,t,n,r,i,a,o,s=x.OBJECT_SD,c=x.OBJECT_DD,l=[-1],u=[-1],d=[-1],f=[-1],p=0)=>samp.callNative(`CreateDynamicObjectEx`,`iffffffffaaaaiiiii`,e,t,n,r,i,a,o,s,c,l,u,d,f,p,l.length,u.length,d.length,f.length),Kt=(e,t,n,r,i,a=x.PICKUP_SD,o=[-1],s=[-1],c=[-1],l=[-1],u=0)=>samp.callNative(`CreateDynamicPickupEx`,`iiffffaaaaiiiii`,e,t,n,r,i,a,o,s,c,l,u,o.length,s.length,c.length,l.length),qt=(e,t,n,r,i=x.CP_SD,a=[-1],o=[-1],s=[-1],c=[-1],l=0)=>samp.callNative(`CreateDynamicCPEx`,`fffffaaaaiiiii`,e,t,n,r,i,a,o,s,c,l,a.length,o.length,s.length,c.length),Jt=(e,t,n,r,i,a,o,s,c=x.RACE_CP_SD,l=[-1],u=[-1],d=[-1],f=[-1],p=0)=>samp.callNative(`CreateDynamicRaceCPEx`,`iffffffffaaaaiiiii`,e,t,n,r,i,a,o,s,c,l,u,d,f,p,l.length,u.length,d.length,f.length),Yt=(e,t,n,r,i,a=Vt.LOCAL,o=x.MAP_ICON_SD,s=[-1],c=[-1],l=[-1],u=[-1],d=0)=>samp.callNative(`CreateDynamicMapIconEx`,`fffiiifaaaaiiiii`,e,t,n,r,i,a,o,s,c,l,u,d,s.length,c.length,l.length,u.length),Xt=(e,t,n,r=[-1],i=[-1],a=[-1],o=0)=>samp.callNative(`CreateDynamicCircleEx`,`fffaaaiiii`,e,t,n,r,i,a,r.length,i.length,a.length,o),Zt=(e,t,n,r,i,a=[-1],o=[-1],s=[-1],c=0)=>samp.callNative(`CreateDynamicCylinderEx`,`fffffaaaiiii`,e,t,n,r,i,a,o,s,a.length,o.length,s.length,c),Qt=(e,t,n,r,i=[-1],a=[-1],o=[-1],s=0)=>samp.callNative(`CreateDynamicSphereEx`,`ffffaaaiiii`,e,t,n,r,i,a,o,i.length,a.length,o.length,s),$t=(e,t,n,r,i=[-1],a=[-1],o=[-1],s=0)=>samp.callNative(`CreateDynamicRectangleEx`,`ffffaaaiiii`,e,t,n,r,i,a,o,i.length,a.length,o.length,s),en=(e,t,n,r,i,a,o=[-1],s=[-1],c=[-1],l=0)=>samp.callNative(`CreateDynamicCuboidEx`,`ffffffaaaiiii`,e,t,n,r,i,a,o,s,c,o.length,s.length,c.length,l),tn=(e,t=Number.MIN_VALUE,n=Number.MAX_VALUE,r=[-1],i=[-1],a=[-1],o=0)=>samp.callNative(`CreateDynamicPolygonEx`,`affiaaaiiii`,e,t,n,e.length,r,i,a,r.length,i.length,a.length,o),nn=(e,t,n,r,i,a=!0,o=100,s=x.ACTOR_SD,c=[0],l=[-1],u=[-1],d=[-1],f=0)=>samp.callNative(`CreateDynamicActorEx`,`iffffiffaaaaiiiii`,e,t,n,r,i,a,o,s,c,l,u,d,f,c.length,l.length,u.length,d.length),rn=(e,t,n,r,i,a=3)=>{let[o,s]=samp.callNative(`Streamer_GetDistanceToItem`,`fffiiFi`,e,t,n,r,i,a);return{distance:o,ret:s}},an=(e,t,n,r)=>samp.callNative(`Streamer_ToggleItem`,`iiii`,e,t,n,r),on=(e,t,n)=>!!samp.callNative(`Streamer_IsToggleItem`,`iii`,e,t,n),sn=(e,t,n,r=[-1])=>samp.callNative(`Streamer_ToggleAllItems`,`iiiai`,e,t,n,r,r.length),cn=(e,t,n)=>samp.callNative(`Streamer_GetItemInternalID`,`iii`,e,t,n),ln=(e,t,n)=>samp.callNative(`Streamer_GetItemStreamerID`,`iii`,e,t,n),un=(e,t,n)=>!!samp.callNative(`Streamer_IsItemVisible`,`iii`,e,t,n),dn=(e,t,n=1)=>samp.callNative(`Streamer_DestroyAllVisibleItems`,`iii`,e,t,n),fn=(e,t,n=1)=>samp.callNative(`Streamer_CountVisibleItems`,`iii`,e,t,n),pn=(e,t=1)=>samp.callNative(`Streamer_DestroyAllItems`,`ii`,e,t),mn=(e,t=1)=>samp.callNative(`Streamer_CountItems`,`ii`,e,t),hn=(e,t,n,r,i=32,a=300,o=-1)=>{let[s=[],c=0]=samp.callNative(`Streamer_GetNearbyItems`,`fffiAifi`,e,t,n,r,i,a,o);return s.slice(0,c)},gn=(e,t,n=32)=>{let[r=[],i=0]=samp.callNative(`Streamer_GetAllVisibleItems`,`iiAi`,e,t,n);return r.slice(0,i)},_n=(e,t)=>{let[n,r,i,a]=samp.callNative(`Streamer_GetItemPos`,`iiFFF`,e,t);return{x:n,y:r,z:i,ret:a}},vn=(e,t,n,r,i)=>samp.callNative(`Streamer_SetItemPos`,`iifff`,e,t,n,r,i),yn=(e,t)=>{let[n,r,i,a]=samp.callNative(`Streamer_GetItemOffset`,`iiFFF`,e,t);return{x:n,y:r,z:i,ret:a}},bn=(e,t,n,r,i)=>samp.callNative(`Streamer_SetItemOffset`,`iifff`,e,t,n,r,i),xn=(e,t,n,r,i,a,o,s=-1,c=-1,l=-1,u=x.OBJECT_SD,d=x.OBJECT_DD,f=-1,p=0)=>samp.callNative(`CreateDynamicObject`,`iffffffiiiffii`,e,t,n,r,i,a,o,s,c,l,u,d,f,p),Sn=e=>samp.callNative(`DestroyDynamicObject`,`i`,e),Cn=e=>!!samp.callNative(`IsValidDynamicObject`,`i`,e),wn=e=>{let[t,n,r,i]=samp.callNative(`GetDynamicObjectPos`,`iFFF`,e);return{x:t,y:n,z:r,ret:i}},Tn=(e,t,n,r)=>samp.callNative(`SetDynamicObjectPos`,`ifff`,e,t,n,r),En=e=>{let[t,n,r,i]=samp.callNative(`GetDynamicObjectRot`,`iFFF`,e);return{rx:t,ry:n,rz:r,ret:i}},Dn=(e,t,n,r)=>samp.callNative(`SetDynamicObjectRot`,`ifff`,e,t,n,r),On=(e,t,n,r,i,a=-1e3,o=-1e3,s=-1e3)=>samp.callNative(`MoveDynamicObject`,`ifffffff`,e,t,n,r,i,a,o,s),kn=e=>samp.callNative(`StopDynamicObject`,`i`,e),An=e=>!!samp.callNative(`IsDynamicObjectMoving`,`i`,e),jn=(e,t)=>samp.callNative(`AttachCameraToDynamicObject`,`ii`,e,t),Mn=(e,t,n,r,i,a,o,s,c=!0)=>samp.callNative(`AttachDynamicObjectToObject`,`iiffffffi`,e,t,n,r,i,a,o,s,c),Nn=(e,t,n,r,i,a,o,s)=>samp.callNative(`AttachDynamicObjectToPlayer`,`iiffffff`,e,t,n,r,i,a,o,s),Pn=(e,t,n,r,i,a,o,s)=>samp.callNative(`AttachDynamicObjectToVehicle`,`iiffffff`,e,t,n,r,i,a,o,s),Fn=(e,t)=>samp.callNative(`EditDynamicObject`,`ii`,e,t),In=(e,t)=>!!samp.callNative(`IsDynamicObjectMaterialUsed`,`ii`,e,t),Ln=(e,t)=>samp.callNative(`RemoveDynamicObjectMaterial`,`ii`,e,t),Rn=(e,t,n,r,i,a=0)=>samp.callNative(`SetDynamicObjectMaterial`,`iiissi`,e,t,n,r,i,a),zn=(e,t)=>!!samp.callNative(`IsDynamicObjectMaterialTextUsed`,`ii`,e,t),Bn=(e,t)=>samp.callNative(`RemoveDynamicObjectMaterialText`,`ii`,e,t),Vn=e=>samp.callNative(`GetPlayerCameraTargetDynObject`,`i`,e),Hn=e=>!!samp.callNative(`SetDynamicObjectNoCameraCol`,`i`,e),Un=e=>!!samp.callNative(`GetDynamicObjectNoCameraCol`,`i`,e),Wn=(e,t,n,r,i,a=-1,o=-1,s=-1,c=x.PICKUP_SD,l=-1,u=0)=>samp.callNative(`CreateDynamicPickup`,`iifffiiifii`,e,t,n,r,i,a,o,s,c,l,u),Gn=e=>!!samp.callNative(`DestroyDynamicPickup`,`i`,e),Kn=e=>!!samp.callNative(`IsValidDynamicPickup`,`i`,e),qn=(e,t,n,r,i,a,o,s,c=-1,l=-1,u=-1,d=x.RACE_CP_SD,f=-1,p=0)=>samp.callNative(`CreateDynamicRaceCP`,`ifffffffiiifii`,e,t,n,r,i,a,o,s,c,l,u,d,f,p),Jn=e=>samp.callNative(`DestroyDynamicRaceCP`,`i`,e),Yn=(e,t,n)=>samp.callNative(`TogglePlayerDynamicRaceCP`,`iii`,e,t,n),Xn=(e,t)=>samp.callNative(`TogglePlayerAllDynamicRaceCPs`,`ii`,e,t),Zn=(e,t)=>!!samp.callNative(`IsPlayerInDynamicRaceCP`,`ii`,e,t),Qn=e=>samp.callNative(`GetPlayerVisibleDynamicRaceCP`,`i`,e),$n=()=>samp.callNative(`Streamer_GetTickRate`,``),er=(e=50)=>samp.callNative(`Streamer_SetTickRate`,`i`,e),tr=e=>samp.callNative(`Streamer_GetPlayerTickRate`,`i`,e),nr=(e,t=50)=>samp.callNative(`Streamer_SetPlayerTickRate`,`ii`,e,t),rr=(e=!1)=>samp.callNative(`Streamer_ToggleChunkStream`,`i`,e),ir=()=>!!samp.callNative(`Streamer_IsToggleChunkStream`,``),ar=(e,t=-1)=>samp.callNative(`Streamer_GetChunkTickRate`,`ii`,e,t),or=(e,t,n=-1)=>samp.callNative(`Streamer_SetChunkTickRate`,`iii`,e,t,n),sr=e=>samp.callNative(`Streamer_GetChunkSize`,`i`,e),cr=(e,t)=>samp.callNative(`Streamer_SetChunkSize`,`ii`,e,t),lr=e=>samp.callNative(`Streamer_GetMaxItems`,`i`,e),ur=(e,t)=>samp.callNative(`Streamer_SetMaxItems`,`ii`,e,t),dr=(e,t=-1)=>samp.callNative(`Streamer_GetVisibleItems`,`ii`,e,t),fr=(e,t,n=-1)=>samp.callNative(`Streamer_SetVisibleItems`,`iii`,e,t,n),pr=(e,t=-1)=>{let[n,r]=samp.callNative(`Streamer_GetRadiusMultiplier`,`iFi`,e,t);return{multiplier:n,ret:r}},mr=(e,t,n=-1)=>samp.callNative(`Streamer_SetRadiusMultiplier`,`ifi`,e,t,n),hr=()=>{let[e,t]=samp.callNative(`Streamer_GetTypePriority`,`Ai`,C.MAX_TYPES);return{priority:e,ret:t}},gr=e=>samp.callNative(`Streamer_SetTypePriority`,`ai`,e,C.MAX_TYPES),_r=()=>{let[e,t]=samp.callNative(`Streamer_GetCellDistance`,`F`);return{distance:e,ret:t}},vr=(e=600)=>samp.callNative(`Streamer_SetCellDistance`,`f`,e),yr=()=>{let[e,t]=samp.callNative(`Streamer_GetCellSize`,`F`);return{size:e,ret:t}},br=(e=300)=>samp.callNative(`Streamer_SetCellSize`,`f`,e),xr=(e,t,n)=>samp.callNative(`Streamer_ToggleItemStatic`,`iii`,e,t,n),Sr=(e,t)=>!!samp.callNative(`Streamer_IsToggleItemStatic`,`ii`,e,t),Cr=(e,t,n)=>samp.callNative(`Streamer_ToggleItemInvAreas`,`iii`,e,t,n),wr=(e,t)=>!!samp.callNative(`Streamer_IsToggleItemInvAreas`,`ii`,e,t),Tr=(e,t,n)=>samp.callNative(`Streamer_ToggleItemCallbacks`,`iii`,e,t,n),Er=(e,t)=>!!samp.callNative(`Streamer_IsToggleItemCallbacks`,`ii`,e,t),Dr=e=>samp.callNative(`Streamer_ToggleErrorCallback`,`i`,e),Or=()=>!!samp.callNative(`Streamer_IsToggleErrorCallback`,``),kr=e=>samp.callNative(`Streamer_AmxUnloadDestroyItems`,`i`,e),Ar=()=>samp.callNative(`Streamer_ProcessActiveItems`,``),jr=(e,t)=>samp.callNative(`Streamer_ToggleIdleUpdate`,`ii`,e,t),Mr=e=>!!samp.callNative(`Streamer_IsToggleIdleUpdate`,`i`,e),Nr=(e,t)=>samp.callNative(`Streamer_ToggleCameraUpdate`,`ii`,e,t),Pr=e=>!!samp.callNative(`Streamer_IsToggleCameraUpdate`,`i`,e),Fr=(e,t,n)=>samp.callNative(`Streamer_ToggleItemUpdate`,`iii`,e,t,n),Ir=(e,t)=>!!samp.callNative(`Streamer_IsToggleItemUpdate`,`ii`,e,t),Lr=()=>{let[e,t]=samp.callNative(`Streamer_GetLastUpdateTime`,`F`);return{time:e,ret:t}},Rr=(e,t=-1)=>samp.callNative(`Streamer_Update`,`ii`,e,t),zr=(e,t,n,r,i=-1,a=-1,o=-1,s=-1,c=!0)=>samp.callNative(`Streamer_UpdateEx`,`ifffiiiii`,e,t,n,r,i,a,o,s,c);var w=class extends Error{constructor(e){super(`[Actor]: ${e}`),this.name=`ActorException`}},Br=class extends Error{constructor(e){super(`[ClientCheck]: ${e}`),this.name=`ClientCheckException`}},Vr=class extends Error{constructor(e){super(`[Core]: ${e}`),this.name=`CoreException`}},Hr=class extends Error{constructor(e){super(`[Dialog]: ${e}`),this.name=`DialogException`}},Ur=class extends Error{constructor(e){super(`Player ${e} disconnected`),this.playerId=e,this.name=`DisconnectException`}},T=class extends Error{constructor(e){super(`[GameMode]: ${e}`),this.name=`GameModeException`}},E=class extends Error{constructor(e){super(`[GangZone]: ${e}`),this.name=`GangZoneException`}},Wr=class extends Error{constructor(e){super(`[Hook]: ${e}`),this.name=`HookException`}},Gr=class extends Error{constructor(e){super(`[I18n]: ${e}`),this.name=`I18nException`}},D=class extends Error{constructor(e){super(`[Menu]: ${e}`),this.name=`MenuException`}},Kr=class extends Error{constructor(e){super(`[NetStats]: ${e}`),this.name=`NetStatsException`}},O=class extends Error{constructor(e){super(`[Npc]: ${e}`),this.name=`NpcException`}},k=class extends Error{constructor(e){super(`[ObjectMp]: ${e}`),this.name=`ObjectMpException`}},A=class extends Error{constructor(e){super(`[Pickup]: ${e}`),this.name=`PickupException`}},qr=class extends Error{constructor(e){super(`[Player]: ${e}`),this.name=`PlayerException`}},j=class extends Error{constructor(e){super(`[TextDraw]: ${e}`),this.name=`TextDrawException`}},Jr=class extends Error{constructor(e){super(`[TextLabel]: ${e}`),this.name=`TextLabelException`}},Yr=class extends Error{constructor(e){super(`[Vehicle]: ${e}`),this.name=`VehicleException`}},Xr=class extends Error{constructor(e){super(`[StreamerException]: ${e}`),this.name=`StreamerException`}},M=class extends Xr{constructor(e){super(`[DynamicActor]: ${e}`),this.name=`DynamicActor`}},N=class extends Xr{constructor(e){super(`[DynamicArea]: ${e}`),this.name=`DynamicArea`}},Zr=class extends Xr{constructor(e){super(`[DynamicCheckPoint]: ${e}`),this.name=`DynamicCheckPoint`}},Qr=class extends Xr{constructor(e){super(`[DynamicMapIcon]: ${e}`),this.name=`DynamicMapIcon`}},$r=class extends Xr{constructor(e){super(`[DynamicPickup]: ${e}`),this.name=`DynamicPickup`}},P=class extends Xr{constructor(e){super(`[DynamicObject]: ${e}`),this.name=`DynamicObject`}},ei=class extends Xr{constructor(e){super(`[DynamicRaceCp]: ${e}`),this.name=`DynamicRaceCp`}},F=class extends Xr{constructor(e){super(`[Dynamic3dTextLabel]: ${e}`),this.name=`DynamicTextLabel`}};const I=new Map,ti=new Map;function ni(e,t){return typeof e==`boolean`?+e:typeof e==`number`&&!isNaN(e)?e:+t}function ri(e,t,...n){let{defaultValue:r=!0,name:i,beforeEach:a,afterEach:o,throwOnError:s=!1}=e,c=I.get(i);if(!c||!c.length)return+r;let l=a?a(...n):{},u=[],d=t,f=()=>{o&&(u.length?Promise.allSettled(u).then(()=>o(l)):o(l))},p=e=>{if(d++,d<c.length){try{e&&Object.assign(l,e);let t={next:p,defaultValue:r,...l},n=c[d](t);return n instanceof Promise?(u.push(n),r):n}catch(e){let t=`executing event [name:${i},index:${d}]`;if(s)throw new Vr(t);console.log(t),e instanceof Error?console.log(e):console.log(JSON.stringify(e)),f()}return r}return f(),r};return ni(p(),r)}function L(e){let{name:t,identifier:n,isNative:r=!0}=e;if(I.has(t))throw new Vr(`event [name:${t}] error: already defined.`);function i(...n){if(n.length===1&&typeof n[0]==`object`&&n[0].__trigger__){let r=n[0],i=-1;if(r.skipToNext){let e=I.get(t);if(e&&e.length){let t=e.indexOf(r.skipToNext);t>-1&&(i=t)}}return ri(e,i,...r.args)}return ri(e,-1,...n)}function a(e,n=!1){I.has(t)||I.set(t,[]);let r=I.get(t),i=(n?r.unshift(e):r.push(e))-1;return()=>{let n=I.get(t);if(!n)return;let r=n.length-1,a=r<i?r:i;for(let t=a;t>=0;t--)if(n[t]===e){n.splice(t,1);break}return n.length===0&&I.delete(t),n.length}}let o=[a,i];return r&&(n!==void 0&&samp.registerEvent(t,n),samp.on(t,i)),ti.set(t,i),o}function ii(e){return ti.get(e)}function ai(e){return Object.assign(e,{__trigger__:!0})}function oi(e){if(!e||typeof e!=`object`)return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null?Object.prototype.toString.call(e)===`[object Object]`:!1}function si(e,t){let n={},r=Object.keys(e);for(let i=0;i<r.length;i++){let a=r[i],o=e[a];n[t(o,a,e)]=o}return n}function ci(e){return e===`__proto__`}function li(e,t){let n=Object.keys(t);for(let r=0;r<n.length;r++){let i=n[r];if(ci(i))continue;let a=t[i],o=e[i];ui(a)&&ui(o)?e[i]=li(o,a):Array.isArray(a)?e[i]=li([],a):oi(a)?e[i]=li({},a):(o===void 0||a!==void 0)&&(e[i]=a)}return e}function ui(e){return oi(e)||Array.isArray(e)}function di(e,t){let n={...e};for(let e=0;e<t.length;e++){let r=t[e];delete n[r]}return n}const fi=/\p{Lu}?\p{Ll}+|[0-9]+|\p{Lu}+(?!\p{Ll})|\p{Emoji_Presentation}|\p{Extended_Pictographic}|\p{L}+/gu;function pi(e){return Array.from(e.match(fi)??[])}function mi(e){return pi(e).map(e=>e.toLowerCase()).join(`_`)}function hi(e){switch(typeof e){case`number`:case`symbol`:return!1;case`string`:return e.includes(`.`)||e.includes(`[`)||e.includes(`]`)}}function gi(e){return typeof e==`string`||typeof e==`symbol`?e:Object.is(e?.valueOf?.(),-0)?`-0`:String(e)}function _i(e){if(e==null)return``;if(typeof e==`string`)return e;if(Array.isArray(e))return e.map(_i).join(`,`);let t=String(e);return t===`0`&&Object.is(Number(e),-0)?`-0`:t}function vi(e){if(Array.isArray(e))return e.map(gi);if(typeof e==`symbol`)return[e];e=_i(e);let t=[],n=e.length;if(n===0)return t;let r=0,i=``,a=``,o=!1;for(e.charCodeAt(0)===46&&(t.push(``),r++);r<n;){let s=e[r];a?s===`\\`&&r+1<n?(r++,i+=e[r]):s===a?a=``:i+=s:o?s===`"`||s===`'`?a=s:s===`]`?(o=!1,t.push(i),i=``):i+=s:s===`[`?(o=!0,i&&=(t.push(i),``)):s===`.`?i&&=(t.push(i),``):i+=s,r++}return i&&t.push(i),t}function yi(e,t,n){if(e==null)return n;switch(typeof t){case`string`:{if(ci(t))return n;let r=e[t];return r===void 0?hi(t)?yi(e,vi(t),n):n:r}case`number`:case`symbol`:{typeof t==`number`&&(t=gi(t));let r=e[t];return r===void 0?n:r}default:{if(Array.isArray(t))return bi(e,t,n);if(t=Object.is(t?.valueOf(),-0)?`-0`:String(t),ci(t))return n;let r=e[t];return r===void 0?n:r}}}function bi(e,t,n){if(t.length===0)return n;let r=e;for(let e=0;e<t.length;e++){if(r==null||ci(t[e]))return n;r=r[t[e]]}return r===void 0?n:r}const{encode:xi,decode:Si,encodingExists:Ci}=t;function wi(e){return e instanceof Buffer}var R=class t{constructor(e,n){this.defaultLocale=e,this.locales=n,this.defaultLocale=mi(e),this.locales=t.snakeLocaleKeys(n)}addLocales=e=>{li(this.locales,t.snakeLocaleKeys(e))};removeLocales=(...e)=>{this.locales=di(this.locales,e)};$t=(t,n,r=this.defaultLocale)=>{let i=this.locales[mi(r)],a=yi(i,t,yi(this.locales[this.defaultLocale],t));if(a===void 0)throw new Gr(`[i18n]: cannot find ${r}["${t}"]`);if(typeof a!=`string`)return JSON.stringify(a);let o=a;return n&&n.length&&(o=e.format(o,...n)),o};static isValidate(e){if(!Ci(e))throw new Gr(`[i18n]: unknown charset ${e}`)}static encodeToBuf(e,n){return t.isValidate(n),[...xi(e,n),0]}static decodeFromBuf(e,n=`utf8`){return t.isValidate(n),Si(wi(e)?e:Buffer.from(t.getValidStr(e)),n)}static getValidStr(e){return e.indexOf(0)===-1?e:e.slice(0,e.indexOf(0))}static snakeLocaleKeys(e){return si(e,(e,t)=>mi(t))}static convertSpecialChar(e){let t={à:`—`,á:`˜`,â:`™`,ä:`š`,À:`€`,Á:``,Â:`‚`,Ä:`ƒ`,è:``,é:`ž`,ê:`Ÿ`,ë:`\xA0`,È:`†`,É:`‡`,Ê:`ˆ`,Ë:`‰`,ì:`¡`,í:`¢`,î:`£`,ï:`¤`,Ì:`Š`,Í:`‹`,Î:`Œ`,Ï:``,ò:`¥`,ó:`¦`,ô:`§`,ö:`¨`,Ò:`Ž`,Ó:``,Ô:``,Ö:`‘`,ù:`©`,ú:`ª`,û:`«`,ü:`¬`,Ù:`’`,Ú:`“`,Û:`”`,Ü:`•`,ñ:`®`,Ñ:`­`,"¡":`@`,"¿":`¯`,"`":`±`};return e.split(``).map(e=>e in t?t[e]:e).join(``)}};const Ti=e=>!!samp.callNative(`IsValidNickName`,`s`,e),Ei=(e,t)=>{samp.callNative(`AllowNickNameCharacter`,`ii`,e,t)},Di=e=>!!samp.callNative(`IsNickNameCharacterAllowed`,`i`,e),Oi=(e,t)=>!!samp.callNative(`AddServerRule`,`ss`,e,t),ki=(e,t)=>!!samp.callNative(`SetServerRule`,`ss`,e,t),Ai=e=>!!samp.callNative(`IsValidServerRule`,`s`,e),ji=e=>!!samp.callNative(`RemoveServerRule`,`s`,e),Mi=e=>{samp.callNative(`AllowAdminTeleport`,`i`,e)},Ni=()=>!!samp.callNative(`IsAdminTeleportAllowed`,``),Pi=e=>{samp.callNative(`AllowInteriorWeapons`,`i`,e)},Fi=()=>!!samp.callNative(`AreInteriorWeaponsAllowed`,``),Ii=()=>!!samp.callNative(`AreAllAnimationsEnabled`,``),Li=e=>{samp.callNative(`EnableAllAnimations`,`i`,e)},Ri=e=>{let[t,n]=samp.callNative(`GetConsoleVarAsString`,`sAi`,e,64);return{consoleVarBuf:t,ret:n}},zi=e=>samp.callNative(`GetConsoleVarAsInt`,`s`,e),Bi=e=>!!samp.callNative(`GetConsoleVarAsBool`,`s`,e),Vi=()=>samp.callNative(`GetWeather`,``),Hi=e=>samp.callNative(`GetServerRuleFlags`,`s`,e),Ui=(e,t)=>!!samp.callNative(`SetServerRuleFlags`,`si`,e,t),Wi=e=>!!samp.callNative(`SetModeRestartTime`,`f`,e),Gi=()=>samp.callNativeFloat(`GetModeRestartTime`,``),Ki=(e,t,n)=>!!samp.callNative(`GameTextForAll`,`aii`,e,t,n),qi=e=>!!samp.callNative(`HideGameTextForAll`,`i`,e),Ji=(e,t,n)=>!!samp.callNative(`SendDeathMessage`,`iii`,e,t,n),Yi=()=>samp.callNative(`GetMaxPlayers`,``),Xi=(e,t,n)=>Math.sqrt(e*e+t*t+n*n),Zi=e=>!!samp.callNative(`SetGameModeText`,`s`,e),Qi=e=>{samp.callNative(`ShowNameTags`,`i`,e)},$i=e=>{samp.callNative(`ShowPlayerMarkers`,`i`,e)},ea=e=>{samp.callNative(`SetWorldTime`,`i`,e)},ta=()=>samp.callNative(`GetWorldTime`,``),na=()=>{samp.callNative(`EnableVehicleFriendlyFire`,``)},ra=e=>{samp.callNative(`SetWeather`,`i`,e)},ia=()=>samp.callNativeFloat(`GetGravity`,``),aa=e=>{samp.callNative(`SetGravity`,`f`,e)},oa=(e,t,n,r,i)=>!!samp.callNative(`CreateExplosion`,`fffif`,e,t,n,r,i),sa=e=>{samp.callNative(`EnableZoneNames`,`i`,e)},ca=()=>{samp.callNative(`UsePlayerPedAnims`,``)},la=()=>{samp.callNative(`DisableInteriorEnterExits`,``)},ua=e=>{samp.callNative(`SetNameTagDrawDistance`,`f`,e)},da=()=>{samp.callNative(`DisableNameTagLOS`,``)},fa=e=>!!samp.callNative(`LimitGlobalChatRadius`,`f`,e),pa=e=>!!samp.callNative(`LimitPlayerMarkerRadius`,`f`,e),ma=()=>samp.callNative(`GetServerTickRate`,``),ha=e=>{let[t,n,r]=samp.callNative(`GetAnimationName`,`iSiSi`,e,32,32);return{animLib:t,animName:n,ret:!!r}},ga=e=>{samp.callNative(`EnableStuntBonusForAll`,`i`,e)},_a=e=>{samp.callNative(`ToggleChatTextReplacement`,`i`,e)},va=()=>!!samp.callNative(`ChatTextReplacementToggled`,``),ya=e=>samp.callNative(`GetWeaponSlot`,`i`,e),ba=e=>{let[t,n]=samp.callNative(`GetWeaponName`,`iSi`,e,32);return{name:t,ret:!!n}},xa=()=>samp.callNative(`GetAvailableClasses`,``),Sa=e=>{let[t,n=0,r=0,i=0,a=0,o=0,s=0,c=0,l=0,u=0,d=0,f=0,p]=samp.callNative(`GetPlayerClass`,`iIIFFFFIIIIII`,e);return{teamId:t,modelId:n,spawnX:r,spawnY:i,spawnZ:a,zAngle:o,weapon1:s,weapon1Ammo:c,weapon2:l,weapon2Ammo:u,weapon3:d,weapon3Ammo:f,ret:!!p}},Ca=(e,t,n,r,i,a,o,s,c,l,u,d,f)=>!!samp.callNative(`EditPlayerClass`,`iiiffffiiiiii`,e,t,n,r,i,a,o,s,c,l,u,d,f),wa=e=>samp.callNative(`SetTeamCount`,`i`,e),Ta=(e,t,n,r,i,a,o,s,c,l,u)=>samp.callNative(`AddPlayerClass`,`iffffiiiiii`,e,t,n,r,i,a,o,s,c,l,u),Ea=(e,t,n,r,i,a,o,s,c,l,u,d)=>samp.callNative(`AddPlayerClassEx`,`iiffffiiiiii`,e,t,n,r,i,a,o,s,c,l,u,d),Da=(e,t,n,r,i,a,o,s,c,l,u,d,f)=>!!samp.callNative(`SetSpawnInfo`,`iiiffffiiiiii`,e,t,n,r,i,a,o,s,c,l,u,d,f),Oa=e=>!!samp.callNative(`SpawnPlayer`,`i`,e),ka=e=>{let[t,n=0,r=0,i=0,a=0,o=0,s=0,c=0,l=0,u=0,d=0,f=0,p]=samp.callNative(`GetSpawnInfo`,`iIIFFFFIIIIII`,e);return{teamId:t,modelId:n,spawnX:r,spawnY:i,spawnZ:a,zAngle:o,weapon1:s,weapon1Ammo:c,weapon2:l,weapon2Ammo:u,weapon3:d,weapon3Ammo:f,ret:!!p}},Aa=e=>samp.callNative(`NetStats_GetConnectedTime`,`i`,e),ja=e=>samp.callNative(`NetStats_MessagesReceived`,`i`,e),Ma=e=>samp.callNative(`NetStats_BytesReceived`,`i`,e),Na=e=>samp.callNative(`NetStats_MessagesSent`,`i`,e),Pa=e=>samp.callNative(`NetStats_BytesSent`,`i`,e),Fa=e=>samp.callNative(`NetStats_MessagesRecvPerSecond`,`i`,e),Ia=e=>samp.callNativeFloat(`NetStats_PacketLossPercent`,`i`,e),La=e=>samp.callNative(`NetStats_ConnectionStatus`,`i`,e),Ra=e=>{let[t,n]=samp.callNative(`NetStats_GetIpPort`,`iSi`,e,134);return{ipPort:t,ret:n}},za=e=>!!samp.callNative(`IsPlayerAdmin`,`i`,e),Ba=(e,t)=>!!samp.callNative(`SetPlayerAdmin`,`ii`,e,t),Va=e=>!!samp.callNative(`Kick`,`i`,e),Ha=e=>!!samp.callNative(`Ban`,`i`,e),Ua=e=>{let[t,n]=samp.callNative(`GetPlayerNetworkStats`,`iSi`,e,1024);return{stats:t,ret:!!n}},Wa=()=>{let[e,t]=samp.callNative(`GetNetworkStats`,`Si`,1024);return{stats:e,ret:!!t}},Ga=(e,t)=>!!samp.callNative(`BlockIpAddress`,`si`,e,t),Ka=e=>!!samp.callNative(`UnBlockIpAddress`,`s`,e),qa=(e,t)=>{let[n,r]=samp.callNative(`gpci`,`iAi`,e,41);return{val:R.decodeFromBuf(R.getValidStr(n),t),ret:r}},Ja=(e,t,n,r,i)=>!!samp.callNative(`SendClientCheck`,`iiiii`,e,t,n,r,i),Ya=()=>!!samp.callNative(`ClearBanList`,``),Xa=e=>!!samp.callNative(`IsBanned`,`s`,e),Za=e=>samp.callNative(`GetPlayerRawIp`,`i`,e),Qa=e=>{let[t,n]=samp.callNative(`GetPlayerIp`,`iSi`,e,128);return{ip:t,ret:n}},$a=e=>{let[t,n]=samp.callNative(`GetPlayerVersion`,`iSi`,e,24);return{version:t,ret:n}},z=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;let t=(e.match(/([0-9])+/g)||[]).map(e=>parseInt(e,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 n=0;return t.reverse().forEach((e,t)=>{e!==0&&(n+=16**(t*2)*e)}),n},eo=(e,t)=>!!samp.callNative(`TogglePlayerWidescreen`,`ii`,e,t),to=e=>!!samp.callNative(`IsPlayerWidescreenToggled`,`i`,e),no=(e,t)=>samp.callNative(`GetPlayerSkillLevel`,`ii`,e,t),ro=e=>samp.callNative(`GetPlayerWeather`,`i`,e),io=e=>{let[t=0,n=0,r=0,i=0,a]=samp.callNative(`GetPlayerWorldBounds`,`iFFFF`,e);return{xMax:t,xMin:n,yMax:r,yMin:i,ret:!!a}},ao=e=>samp.callNativeFloat(`GetPlayerZAim`,`i`,e),oo=e=>{let[t=0,n=0,r=0,i]=samp.callNative(`GetPlayerSurfingOffsets`,`iFFF`,e);return{fOffsetX:t,fOffsetY:n,fOffsetZ:r,ret:!!i}},so=e=>{let[t=0,n=0,r=0,i=0,a]=samp.callNative(`GetPlayerRotationQuat`,`iFFFF`,e);return{w:t,x:n,y:r,z:i,ret:!!a}},co=e=>samp.callNative(`GetPlayerDialogID`,`i`,e),lo=e=>samp.callNative(`GetPlayerSpectateID`,`i`,e),uo=e=>samp.callNative(`GetPlayerSpectateType`,`i`,e),fo=(e,t)=>!!samp.callNative(`SetPlayerGravity`,`if`,e,t),po=e=>samp.callNativeFloat(`GetPlayerGravity`,`i`,e),mo=e=>!!samp.callNative(`IsPlayerSpawned`,`i`,e),ho=e=>!!samp.callNative(`IsPlayerControllable`,`i`,e),go=e=>!!samp.callNative(`IsPlayerCameraTargetEnabled`,`i`,e),_o=(e,t)=>!!samp.callNative(`TogglePlayerGhostMode`,`ii`,e,t),vo=e=>!!samp.callNative(`GetPlayerGhostMode`,`i`,e),yo=e=>samp.callNative(`GetPlayerBuildingsRemoved`,`i`,e),bo=(e,t)=>!!samp.callNative(`RemovePlayerWeapon`,`ii`,e,t),xo=e=>!!samp.callNative(`HidePlayerDialog`,`i`,e),So=e=>!!samp.callNative(`IsPlayerUsingOfficialClient`,`i`,e),Co=(e,t)=>!!samp.callNative(`AllowPlayerTeleport`,`ii`,e,t),wo=e=>!!samp.callNative(`IsPlayerTeleportAllowed`,`i`,e),To=(e,t)=>!!samp.callNative(`AllowPlayerWeapons`,`i`,e,t),Eo=e=>!!samp.callNative(`ArePlayerWeaponsAllowed`,`i`,e),Do=(e,t,n,r)=>!!samp.callNative(`GameTextForPlayer`,`iaii`,e,t,n,r),Oo=(e,t)=>!!samp.callNative(`HasGameText`,`ii`,e,t),ko=(e,t,n,r)=>!!samp.callNative(`SendDeathMessageToPlayer`,`iiii`,e,t,n,r),Ao=(e,t)=>!!samp.callNative(`HideGameTextForPlayer`,`ii`,e,t),jo=e=>!!samp.callNative(`IsPlayerNPC`,`i`,e),Mo=(e,t,n,r)=>!!samp.callNative(`SetPlayerPos`,`ifff`,e,t,n,r),No=(e,t,n,r)=>!!samp.callNative(`SetPlayerPosFindZ`,`ifff`,e,t,n,r),Po=e=>{let[t,n,r,i]=samp.callNative(`GetPlayerPos`,`iFFF`,e);return{x:t,y:n,z:r,ret:!!i}},Fo=(e,t)=>!!samp.callNative(`SetPlayerFacingAngle`,`if`,e,t),Io=e=>{let[t,n]=samp.callNative(`GetPlayerFacingAngle`,`iF`,e);return{angle:t,ret:!!n}},Lo=(e,t,n,r,i)=>!!samp.callNative(`IsPlayerInRangeOfPoint`,`iffff`,e,t,n,r,i),Ro=(e,t,n,r)=>samp.callNativeFloat(`GetPlayerDistanceFromPoint`,`ifff`,e,t,n,r),zo=(e,t)=>!!samp.callNative(`IsPlayerStreamedIn`,`ii`,e,t),Bo=(e,t)=>!!samp.callNative(`SetPlayerInterior`,`ii`,e,t),Vo=e=>samp.callNative(`GetPlayerInterior`,`i`,e),Ho=(e,t)=>!!samp.callNative(`SetPlayerHealth`,`if`,e,t),Uo=e=>{let[t,n]=samp.callNative(`GetPlayerHealth`,`iF`,e);return{health:t,ret:!!n}},Wo=(e,t)=>!!samp.callNative(`SetPlayerArmour`,`if`,e,t),Go=e=>{let[t,n]=samp.callNative(`GetPlayerArmour`,`iF`,e);return{armour:t,ret:!!n}},Ko=(e,t,n)=>!!samp.callNative(`SetPlayerAmmo`,`iii`,e,t,n),qo=e=>samp.callNative(`GetPlayerAmmo`,`i`,e),Jo=e=>samp.callNative(`GetPlayerWeaponState`,`i`,e),Yo=e=>samp.callNative(`GetPlayerTargetPlayer`,`i`,e),Xo=(e,t)=>!!samp.callNative(`SetPlayerTeam`,`ii`,e,t),Zo=e=>samp.callNative(`GetPlayerTeam`,`i`,e),Qo=(e,t)=>!!samp.callNative(`SetPlayerScore`,`ii`,e,t),$o=e=>samp.callNative(`GetPlayerScore`,`i`,e),es=e=>samp.callNative(`GetPlayerDrunkLevel`,`i`,e),ts=(e,t)=>!!samp.callNative(`SetPlayerDrunkLevel`,`ii`,e,t),ns=(e,t)=>!!samp.callNative(`SetPlayerColor`,`ii`,e,z(t)),rs=e=>samp.callNative(`GetPlayerColor`,`i`,e),is=(e,t)=>!!samp.callNative(`SetPlayerSkin`,`ii`,e,t),as=e=>samp.callNative(`GetPlayerSkin`,`i`,e),os=(e,t,n)=>!!samp.callNative(`GivePlayerWeapon`,`iii`,e,t,n),ss=e=>!!samp.callNative(`ResetPlayerWeapons`,`i`,e),cs=(e,t)=>!!samp.callNative(`SetPlayerArmedWeapon`,`ii`,e,t),ls=(e,t)=>{let[n,r,i]=samp.callNative(`GetPlayerWeaponData`,`iiII`,e,t);return{weapons:n,ammo:r,ret:!!i}},us=(e,t)=>!!samp.callNative(`GivePlayerMoney`,`ii`,e,t),ds=e=>!!samp.callNative(`ResetPlayerMoney`,`i`,e),fs=e=>samp.callNative(`GetPlayerMoney`,`i`,e),ps=e=>samp.callNative(`GetPlayerState`,`i`,e),ms=e=>samp.callNative(`GetPlayerPing`,`i`,e),hs=e=>samp.callNative(`GetPlayerWeapon`,`i`,e),gs=e=>{let[t,n,r,i]=samp.callNative(`GetPlayerKeys`,`iIII`,e);return{keys:t,upDown:n,leftRight:r,ret:!!i}},_s=(e,t,n)=>!!samp.callNative(`SetPlayerTime`,`iii`,e,t,n),vs=e=>{let[t,n,r]=samp.callNative(`GetPlayerTime`,`iII`,e);return{hour:t,minute:n,ret:!!r}},ys=(e,t)=>!!samp.callNative(`TogglePlayerClock`,`ii`,e,t),bs=(e,t)=>!!samp.callNative(`SetPlayerWeather`,`ii`,e,t),xs=e=>!!samp.callNative(`ForceClassSelection`,`i`,e),Ss=(e,t)=>!!samp.callNative(`SetPlayerWantedLevel`,`ii`,e,t),Cs=e=>samp.callNative(`GetPlayerWantedLevel`,`i`,e),ws=(e,t)=>!!samp.callNative(`SetPlayerFightingStyle`,`ii`,e,t),Ts=e=>samp.callNative(`GetPlayerFightingStyle`,`i`,e),Es=(e,t,n,r)=>!!samp.callNative(`SetPlayerVelocity`,`ifff`,e,t,n,r),Ds=e=>{let[t,n,r,i]=samp.callNative(`GetPlayerVelocity`,`iFFF`,e);return{x:t,y:n,z:r,ret:!!i}},Os=(e,t,n)=>!!samp.callNative(`PlayCrimeReportForPlayer`,`iii`,e,t,n),ks=(e,t,n,r,i,a,o=!1)=>!!samp.callNative(`PlayAudioStreamForPlayer`,`isffffi`,e,t,n,r,i,a,o),As=e=>!!samp.callNative(`StopAudioStreamForPlayer`,`i`,e),js=(e,t)=>!!samp.callNative(`SetPlayerShopName`,`is`,e,t),Ms=(e,t,n)=>!!samp.callNative(`SetPlayerSkillLevel`,`iii`,e,t,n),Ns=e=>samp.callNative(`GetPlayerSurfingVehicleID`,`i`,e),Ps=e=>samp.callNative(`GetPlayerSurfingObjectID`,`i`,e),Fs=e=>samp.callNative(`GetPlayerSurfingPlayerObjectID`,`i`,e),Is=(e,t,n,r,i,a)=>!!samp.callNative(`RemoveBuildingForPlayer`,`iiffff`,e,t,n,r,i,a),Ls=e=>{let[t,n,r,i,a,o,s]=samp.callNative(`GetPlayerLastShotVectors`,`iFFFFFF`,e);return{fOriginX:t,fOriginY:n,fOriginZ:r,fHitPosX:i,fHitPosY:a,fHitPosZ:o,ret:!!s}},Rs=(e,t,n)=>!!samp.callNative(`PutPlayerInVehicle`,`iii`,e,t,n),zs=e=>samp.callNative(`GetPlayerVehicleID`,`i`,e),Bs=e=>samp.callNative(`GetPlayerVehicleSeat`,`i`,e),Vs=e=>!!samp.callNative(`RemovePlayerFromVehicle`,`i`,e),Hs=(e,t)=>!!samp.callNative(`TogglePlayerControllable`,`ii`,e,t),Us=(e,t,n,r,i)=>!!samp.callNative(`PlayerPlaySound`,`iifff`,e,t,n,r,i),Ws=(e,t,n,r,i,a,o,s,c,l)=>!!samp.callNative(`ApplyAnimation`,`issfiiiiii`,e,t,n,r,i,a,o,s,c,l),Gs=(e,t)=>!!samp.callNative(`ClearAnimations`,`ii`,e,t),Ks=e=>samp.callNative(`GetPlayerAnimationIndex`,`i`,e),qs=e=>samp.callNative(`GetPlayerSpecialAction`,`i`,e),Js=(e,t)=>!!samp.callNative(`SetPlayerSpecialAction`,`ii`,e,t),Ys=(e,t)=>!!samp.callNative(`DisableRemoteVehicleCollisions`,`ii`,e,t),Xs=(e,t)=>!!samp.callNative(`SetPlayerVirtualWorld`,`ii`,e,t),Zs=e=>samp.callNative(`GetPlayerVirtualWorld`,`i`,e),Qs=(e,t)=>!!samp.callNative(`EnableStuntBonusForPlayer`,`ii`,e,t),$s=e=>samp.callNative(`GetPlayerCustomSkin`,`i`,e),ec=(e,t,n,r,i,a)=>!!samp.callNative(`CreateExplosionForPlayer`,`ifffif`,e,t,n,r,i,a),tc=(e,t,n)=>!!samp.callNative(`StartRecordingPlayerData`,`iis`,e,t,n),nc=e=>!!samp.callNative(`StopRecordingPlayerData`,`i`,e),rc=(e,t)=>!!samp.callNative(`TogglePlayerSpectating`,`ii`,e,t),ic=(e,t,n)=>!!samp.callNative(`PlayerSpectatePlayer`,`iii`,e,t,n),ac=(e,t,n)=>!!samp.callNative(`PlayerSpectateVehicle`,`iii`,e,t,n),oc=e=>!!samp.callNative(`IsPlayerConnected`,`i`,e),sc=(e,t)=>!!samp.callNative(`IsPlayerInVehicle`,`ii`,e,t),cc=e=>!!samp.callNative(`IsPlayerInAnyVehicle`,`i`,e),lc=(e,t,n,r,i)=>!!samp.callNative(`SetPlayerWorldBounds`,`iffff`,e,t,n,r,i),uc=e=>!!samp.callNative(`ClearPlayerWorldBounds`,`i`,e),dc=(e,t,n)=>!!samp.callNative(`SetPlayerMarkerForPlayer`,`iii`,e,t,z(n));function fc(e,t){return samp.callNative(`GetPlayerMarkerForPlayer`,`ii`,e,t)}const pc=(e,t,n)=>!!samp.callNative(`ShowPlayerNameTagForPlayer`,`iii`,e,t,n),mc=(e,t,n,r,i,a,o,s)=>!!samp.callNative(`SetPlayerMapIcon`,`iifffiii`,e,t,n,r,i,a,z(o),s),hc=(e,t)=>!!samp.callNative(`RemovePlayerMapIcon`,`ii`,e,t),gc=(e,t,n,r)=>!!samp.callNative(`SetPlayerCameraPos`,`ifff`,e,t,n,r),_c=(e,t,n,r,i)=>!!samp.callNative(`SetPlayerCameraLookAt`,`ifffi`,e,t,n,r,i),vc=e=>!!samp.callNative(`SetCameraBehindPlayer`,`i`,e),yc=e=>{let[t,n,r,i]=samp.callNative(`GetPlayerCameraPos`,`iFFF`,e);return{x:t,y:n,z:r,ret:!!i}},bc=e=>{let[t,n,r,i]=samp.callNative(`GetPlayerCameraFrontVector`,`iFFF`,e);return{x:t,y:n,z:r,ret:!!i}},xc=e=>samp.callNative(`GetPlayerCameraMode`,`i`,e),Sc=(e,t)=>!!samp.callNative(`EnablePlayerCameraTarget`,`ii`,e,t),Cc=e=>samp.callNative(`GetPlayerCameraTargetObject`,`i`,e),wc=e=>samp.callNative(`GetPlayerCameraTargetVehicle`,`i`,e),Tc=e=>samp.callNative(`GetPlayerCameraTargetPlayer`,`i`,e),Ec=e=>samp.callNative(`GetPlayerCameraTargetActor`,`i`,e),Dc=e=>samp.callNativeFloat(`GetPlayerCameraAspectRatio`,`i`,e),Oc=e=>samp.callNativeFloat(`GetPlayerCameraZoom`,`i`,e),kc=(e,t)=>!!samp.callNative(`AttachCameraToObject`,`ii`,e,t),Ac=(e,t)=>!!samp.callNative(`AttachCameraToPlayerObject`,`ii`,e,t),jc=(e,t,n,r,i,a,o,s,c)=>!!samp.callNative(`InterpolateCameraPos`,`iffffffii`,e,t,n,r,i,a,o,s,c),Mc=(e,t,n,r,i,a,o,s,c)=>!!samp.callNative(`InterpolateCameraLookAt`,`iffffffii`,e,t,n,r,i,a,o,s,c),Nc=e=>!!samp.callNative(`IsPlayerCuffed`,`i`,e),Pc=e=>!!samp.callNative(`IsPlayerInDriveByMode`,`i`,e),Fc=e=>!!samp.callNative(`IsPlayerUsingOmp`,`i`,e),Ic=e=>!!samp.callNative(`PlayerHasClockEnabled`,`i`,e),Lc=e=>samp.callNative(`GetActorSkin`,`i`,e),Rc=(e,t)=>!!samp.callNative(`SetActorSkin`,`ii`,e,t),zc=e=>{let[t=0,n=0,r=0,i=0,a=0,o]=samp.callNative(`GetActorSpawnInfo`,`iIFFFF`,e);return{skinId:t,fX:n,fY:r,fZ:i,fAngle:a,ret:!!o}},Bc=e=>{let[t,n,r=0,i=0,a=0,o=0,s=0,c=0,l]=samp.callNative(`GetActorAnimation`,`iSiSiFIIIII`,e,32,32);return{animLib:t,animName:n,fDelta:r,loop:i,lockX:a,lockY:o,freeze:s,time:c,ret:!!l}},Vc=(e,t,n,r,i)=>samp.callNative(`CreateActor`,`iffff`,e,t,n,r,i),Hc=e=>!!samp.callNative(`DestroyActor`,`i`,e),Uc=(e,t)=>!!samp.callNative(`IsActorStreamedIn`,`ii`,e,t),Wc=(e,t)=>!!samp.callNative(`SetActorVirtualWorld`,`ii`,e,t),Gc=e=>samp.callNative(`GetActorVirtualWorld`,`i`,e),Kc=(e,t,n,r,i,a,o,s,c)=>!!samp.callNative(`ApplyActorAnimation`,`issfiiiii`,e,t,n,r,i,a,o,s,c),qc=e=>!!samp.callNative(`ClearActorAnimations`,`i`,e),Jc=(e,t,n,r)=>!!samp.callNative(`SetActorPos`,`ifff`,e,t,n,r),Yc=e=>{let[t,n,r,i]=samp.callNative(`GetActorPos`,`iFFF`,e);return{x:t,y:n,z:r,ret:!!i}},Xc=(e,t)=>!!samp.callNative(`SetActorFacingAngle`,`if`,e,t),Zc=e=>{let[t,n]=samp.callNative(`GetActorFacingAngle`,`iF`,e);return{angle:t,ret:!!n}},Qc=(e,t)=>!!samp.callNative(`SetActorHealth`,`if`,e,t),$c=e=>{let[t,n]=samp.callNative(`GetActorHealth`,`iF`,e);return{health:t,ret:!!n}},el=(e,t)=>!!samp.callNative(`SetActorInvulnerable`,`ii`,e,t),tl=e=>!!samp.callNative(`IsActorInvulnerable`,`i`,e),nl=e=>!!samp.callNative(`IsValidActor`,`i`,e),rl=e=>samp.callNative(`NPC_Create`,`s`,e),il=e=>!!samp.callNative(`NPC_Destroy`,`i`,e),al=e=>!!samp.callNative(`NPC_IsValid`,`i`,e),ol=e=>!!samp.callNative(`NPC_Spawn`,`i`,e),sl=e=>!!samp.callNative(`NPC_Respawn`,`i`,e),cl=(e,t,n,r)=>!!samp.callNative(`NPC_SetPos`,`ifff`,e,t,n,r),ll=(e,t,n,r)=>!!samp.callNative(`NPC_SetRot`,`ifff`,e,t,n,r),ul=e=>{let[t,n,r,i]=samp.callNative(`NPC_GetRot`,`iFFF`,e);return{rX:t,rY:n,rZ:r,ret:!!i}},dl=(e,t)=>!!samp.callNative(`NPC_SetFacingAngle`,`if`,e,t),fl=e=>{let[t,n]=samp.callNative(`NPC_GetFacingAngle`,`iF`,e);return{angle:t,ret:!!n}},pl=(e,t)=>!!samp.callNative(`NPC_SetVirtualWorld`,`ii`,e,t),ml=e=>samp.callNative(`NPC_GetVirtualWorld`,`i`,e),hl=(e,t,n,r,i,a)=>!!samp.callNative(`NPC_Move`,`ifffif`,e,t,n,r,i,a),gl=(e,t,n,r)=>!!samp.callNative(`NPC_MoveToPlayer`,`iiif`,e,t,n,r),_l=e=>!!samp.callNative(`NPC_StopMove`,`i`,e),vl=e=>!!samp.callNative(`NPC_IsMoving`,`i`,e),yl=(e,t)=>!!samp.callNative(`NPC_IsMovingToPlayer`,`ii`,e,t),bl=(e,t)=>!!samp.callNative(`NPC_SetSkin`,`ii`,e,t),xl=e=>samp.callNative(`NPC_GetSkin`,`i`,e),Sl=(e,t)=>!!samp.callNative(`NPC_IsStreamedIn`,`ii`,e,t),Cl=e=>!!samp.callNative(`NPC_IsAnyStreamedIn`,`i`,e),wl=(e,t)=>!!samp.callNative(`NPC_SetInterior`,`ii`,e,t),Tl=e=>samp.callNative(`NPC_GetInterior`,`i`,e),El=(e,t)=>!!samp.callNative(`NPC_SetHealth`,`if`,e,t),Dl=e=>samp.callNativeFloat(`NPC_GetHealth`,`i`,e),Ol=(e,t)=>!!samp.callNative(`NPC_SetArmour`,`if`,e,t),kl=e=>samp.callNativeFloat(`NPC_GetArmour`,`i`,e),Al=e=>!!samp.callNative(`NPC_IsDead`,`i`,e),jl=(e,t,n,r,i,a,o,s,c,l)=>!!samp.callNative(`NPC_ApplyAnimation`,`issfiiiiii`,e,t,n,r,i,a,o,s,c,l),Ml=(e,t)=>!!samp.callNative(`NPC_SetWeapon`,`ii`,e,t),Nl=e=>samp.callNative(`NPC_GetWeapon`,`i`,e),Pl=(e,t)=>!!samp.callNative(`NPC_SetAmmo`,`ii`,e,t),Fl=e=>samp.callNative(`NPC_GetAmmo`,`i`,e),Il=(e,t,n,r)=>!!samp.callNative(`NPC_SetKeys`,`iiii`,e,t,n,r),Ll=e=>{let[t,n,r,i]=samp.callNative(`NPC_GetKeys`,`iIII`,e);return{upAndDown:t,leftAndDown:n,keys:r,ret:!!i}},Rl=(e,t,n)=>!!samp.callNative(`NPC_SetWeaponSkillLevel`,`iii`,e,t,n),zl=(e,t)=>samp.callNative(`NPC_GetWeaponSkillLevel`,`ii`,e,t),Bl=(e,t=-1,n=!1)=>!!samp.callNative(`NPC_MeleeAttack`,`iii`,e,t,n),Vl=e=>!!samp.callNative(`NPC_StopMeleeAttack`,`i`,e),Hl=e=>!!samp.callNative(`NPC_IsMeleeAttacking`,`i`,e),Ul=(e,t)=>!!samp.callNative(`NPC_SetFightingStyle`,`ii`,e,t),Wl=e=>samp.callNative(`NPC_GetFightingStyle`,`i`,e),Gl=(e,t=!0)=>!!samp.callNative(`NPC_EnableReloading`,`ii`,e,t),Kl=e=>!!samp.callNative(`NPC_IsReloadEnabled`,`i`,e),ql=e=>!!samp.callNative(`NPC_IsReloading`,`i`,e),Jl=(e,t=!0)=>!!samp.callNative(`NPC_EnableInfiniteAmmo`,`ii`,e,t),Yl=e=>!!samp.callNative(`NPC_IsInfiniteAmmoEnabled`,`i`,e),Xl=(e,t)=>!!samp.callNative(`NPC_SetWeaponState`,`ii`,e,t),Zl=e=>samp.callNative(`NPC_GetWeaponState`,`i`,e),Ql=(e,t)=>!!samp.callNative(`NPC_SetAmmoInClip`,`ii`,e,t),$l=e=>samp.callNative(`NPC_GetAmmoInClip`,`i`,e),eu=(e,t,n,r,i,a,o,s=0,c=0,l=0,u=!0,d=h.ALL)=>!!samp.callNative(`NPC_Shoot`,`iiiffffffii`,e,t,n,r,i,a,o,s,c,l,u,d),tu=e=>!!samp.callNative(`NPC_IsShooting`,`i`,e),nu=(e,t,n,r,i=!1,a=-1,o=!0,s=0,c=0,l=0,u=h.ALL)=>!!samp.callNative(`NPC_AimAt`,`ifffiiifffi`,e,t,n,r,i,a,o,s,c,l,u),ru=(e,t,n=!1,r=-1,i=!0,a=0,o=0,s=0,c=0,l=0,u=0,d=h.ALL)=>!!samp.callNative(`NPC_AimAtPlayer`,`iiiiiffffffi`,e,t,n,r,i,a,o,s,c,l,u,d),iu=e=>!!samp.callNative(`NPC_StopAim`,`i`,e),au=e=>!!samp.callNative(`NPC_IsAiming`,`i`,e),ou=(e,t)=>!!samp.callNative(`NPC_IsAimingAtPlayer`,`ii`,e,t),su=(e,t,n)=>!!samp.callNative(`NPC_SetWeaponAccuracy`,`iif`,e,t,n),cu=(e,t)=>samp.callNativeFloat(`NPC_GetWeaponAccuracy`,`ii`,e,t),lu=(e,t,n)=>!!samp.callNative(`NPC_SetWeaponReloadTime`,`iii`,e,t,n),uu=(e,t)=>samp.callNative(`NPC_GetWeaponReloadTime`,`ii`,e,t),du=(e,t)=>samp.callNative(`NPC_GetWeaponActualReloadTime`,`ii`,e,t),fu=(e,t,n)=>!!samp.callNative(`NPC_SetWeaponShootTime`,`iii`,e,t,n),pu=(e,t)=>samp.callNative(`NPC_GetWeaponShootTime`,`ii`,e,t),mu=(e,t,n)=>!!samp.callNative(`NPC_SetWeaponClipSize`,`iii`,e,t,n),hu=(e,t)=>samp.callNative(`NPC_GetWeaponClipSize`,`ii`,e,t),gu=(e,t)=>samp.callNative(`NPC_GetWeaponActualClipSize`,`ii`,e,t),_u=(e,t,n,r)=>!!samp.callNative(`NPC_EnterVehicle`,`iiii`,e,t,n,r),vu=e=>!!samp.callNative(`NPC_ExitVehicle`,`i`,e),yu=(e,t,n)=>!!samp.callNative(`NPC_PutInVehicle`,`iii`,e,t,n),bu=e=>!!samp.callNative(`NPC_RemoveFromVehicle`,`i`,e),xu=e=>samp.callNative(`NPC_GetVehicle`,`i`,e),Su=e=>samp.callNative(`NPC_GetVehicleSeat`,`i`,e),Cu=e=>samp.callNative(`NPC_GetEnteringVehicle`,`i`,e),wu=e=>samp.callNative(`NPC_GetEnteringVehicleSeat`,`i`,e),Tu=e=>!!samp.callNative(`NPC_IsEnteringVehicle`,`i`,e),Eu=(e,t)=>!!samp.callNative(`NPC_UseVehicleSiren`,`ii`,e,t),Du=e=>!!samp.callNative(`NPC_IsVehicleSirenUsed`,`i`,e),Ou=(e,t)=>!!samp.callNative(`NPC_SetVehicleHealth`,`if`,e,t),ku=e=>samp.callNativeFloat(`NPC_GetVehicleHealth`,`i`,e),Au=(e,t)=>!!samp.callNative(`NPC_SetVehicleHydraThrusters`,`ii`,e,t),ju=e=>samp.callNative(`NPC_GetVehicleHydraThrusters`,`i`,e),Mu=(e,t)=>!!samp.callNative(`NPC_SetVehicleGearState`,`ii`,e,t),Nu=e=>samp.callNative(`NPC_GetVehicleGearState`,`i`,e),Pu=(e,t)=>!!samp.callNative(`NPC_SetVehicleTrainSpeed`,`if`,e,t),Fu=e=>samp.callNativeFloat(`NPC_GetVehicleTrainSpeed`,`i`,e),Iu=e=>!!samp.callNative(`NPC_ResetAnimation`,`i`,e),Lu=(e,t,n,r,i,a,o,s)=>!!samp.callNative(`NPC_SetAnimation`,`iifiiiii`,e,t,n,r,i,a,o,s),Ru=e=>{let[t,n,r,i,a,o,s,c]=samp.callNative(`NPC_GetAnimation`,`iIFIIIII`,e);return{animationId:t,delta:n,loop:!!r,lockX:!!i,lockY:!!a,freeze:!!o,time:s,ret:!!c}},zu=e=>!!samp.callNative(`NPC_ClearAnimations`,`i`,e),Bu=(e,t)=>!!samp.callNative(`NPC_SetSpecialAction`,`ii`,e,t),Vu=e=>samp.callNative(`NPC_GetSpecialAction`,`i`,e),Hu=(e,t,n=!1,r=0,i=0,a=0,o=0,s=0,c=0)=>!!samp.callNative(`NPC_StartPlayback`,`isiffffff`,e,t,n,r,i,a,o,s,c),Uu=(e,t,n=!1,r=0,i=0,a=0,o=0,s=0,c=0)=>!!samp.callNative(`NPC_StartPlaybackEx`,`iiiffffff`,e,t,n,r,i,a,o,s,c),Wu=e=>!!samp.callNative(`NPC_StopPlayback`,`i`,e),Gu=(e,t=!0)=>!!samp.callNative(`NPC_PausePlayback`,`ii`,e,t),Ku=e=>!!samp.callNative(`NPC_IsPlayingPlayback`,`i`,e),qu=e=>!!samp.callNative(`NPC_IsPlaybackPaused`,`i`,e),Ju=(e,t,n,r,i,a)=>!!samp.callNative(`NPC_PlayNode`,`iiiffi`,e,t,n,r,i,a),Yu=e=>!!samp.callNative(`NPC_StopPlayingNode`,`i`,e),Xu=e=>!!samp.callNative(`NPC_PausePlayingNode`,`i`,e),Zu=e=>!!samp.callNative(`NPC_ResumePlayingNode`,`i`,e),Qu=e=>!!samp.callNative(`NPC_IsPlayingNodePaused`,`i`,e),$u=e=>!!samp.callNative(`NPC_IsPlayingNode`,`i`,e),ed=(e,t,n)=>!!samp.callNative(`NPC_ChangeNode`,`iii`,e,t,n),td=(e,t)=>!!samp.callNative(`NPC_UpdateNodePoint`,`ii`,e,t),nd=(e,t=!0)=>!!samp.callNative(`NPC_SetInvulnerable`,`ii`,e,t),rd=e=>!!samp.callNative(`NPC_IsInvulnerable`,`i`,e),id=(e,t,n,r)=>!!samp.callNative(`NPC_SetSurfingOffsets`,`ifff`,e,t,n,r),ad=e=>{let[t,n,r,i]=samp.callNative(`NPC_GetSurfingOffsets`,`iFFF`,e);return{x:t,y:n,z:r,ret:!!i}},od=(e,t)=>!!samp.callNative(`NPC_SetSurfingVehicle`,`ii`,e,t),sd=e=>samp.callNative(`NPC_GetSurfingVehicle`,`i`,e),cd=(e,t)=>!!samp.callNative(`NPC_SetSurfingObject`,`ii`,e,t),ld=e=>samp.callNative(`NPC_GetSurfingObject`,`i`,e),ud=(e,t)=>!!samp.callNative(`NPC_SetSurfingPlayerObject`,`ii`,e,t),dd=e=>samp.callNative(`NPC_GetSurfingPlayerObject`,`i`,e),fd=e=>!!samp.callNative(`NPC_ResetSurfingData`,`i`,e),pd=e=>!!samp.callNative(`NPC_IsSpawned`,`i`,e),md=(e,t,n)=>!!samp.callNative(`NPC_Kill`,`iii`,e,t,n),hd=(e,t,n,r)=>!!samp.callNative(`NPC_SetVelocity`,`ifff`,e,t,n,r),gd=e=>{let[t,n,r,i]=samp.callNative(`NPC_GetVelocity`,`iFFF`,e);return{x:t,y:n,z:r,ret:i}},_d=e=>samp.callNative(`NPC_GetPlayerAimingAt`,`i`,e),vd=e=>samp.callNative(`NPC_GetPlayerMovingTo`,`i`,e),yd=e=>{let[t,n,r,i]=samp.callNative(`NPC_GetPosMovingTo`,`iFFF`,e);return{x:t,y:n,z:r,ret:!!i}},bd=e=>samp.callNative(`NPC_GetCustomSkin`,`i`,e),xd=(e,t,n,r)=>!!samp.callNative(`NPC_SetAngleToPos`,`ifff`,e,t,n,r),Sd=(e,t)=>!!samp.callNative(`NPC_SetAngleToPlayer`,`ii`,e,t),Cd=(e,t,n,r,i)=>!!samp.callNative(`NPC_SetVehiclePos`,`ifffi`,e,t,n,r,i),wd=(e,t,n,r,i)=>!!samp.callNative(`NPC_SetVehicleRot`,`ifffi`,e,t,n,r,i),Td=e=>{let[t=0,n=0,r=0,i=0,a=0,o=0,s]=samp.callNative(`GetVehicleSpawnInfo`,`iFFFFII`,e);return{fX:t,fY:n,fZ:r,fRot:i,color1:a,color2:o,ret:!!s}},Ed=(e,t,n,r,i,a,o,s,c=-2,l=-2)=>!!samp.callNative(`SetVehicleSpawnInfo`,`iiffffiiii`,e,t,n,r,i,a,o,s,c,l),Dd=e=>{let[t=0,n=0,r]=samp.callNative(`GetVehicleColor`,`iII`,e);return{color1:t,color2:n,ret:!!r}},Od=e=>samp.callNative(`GetVehiclePaintjob`,`i`,e),kd=e=>samp.callNative(`GetVehicleInterior`,`i`,e),Ad=e=>{let[t,n]=samp.callNative(`GetVehicleNumberPlate`,`iSi`,e,33);return{plate:t,ret:!!n}},jd=(e,t)=>!!samp.callNative(`SetVehicleRespawnDelay`,`ii`,e,t),Md=e=>samp.callNative(`GetVehicleRespawnDelay`,`i`,e),Nd=e=>samp.callNative(`GetVehicleCab`,`i`,e),Pd=e=>samp.callNative(`GetVehicleOccupiedTick`,`i`,e),Fd=(e,t)=>samp.callNative(`SetVehicleOccupiedTick`,`ii`,e,t),Id=e=>!!samp.callNative(`HasVehicleBeenOccupied`,`i`,e),Ld=e=>!!samp.callNative(`IsVehicleOccupied`,`i`,e),Rd=e=>samp.callNative(`GetVehicleRespawnTick`,`i`,e),zd=(e,t)=>samp.callNative(`SetVehicleRespawnTick`,`ii`,e,t),Bd=e=>!!samp.callNative(`IsVehicleDead`,`i`,e),Vd=(e,t)=>!!samp.callNative(`SetVehicleDead`,`ii`,e,t),Hd=(e,t)=>!!samp.callNative(`SetVehicleBeenOccupied`,`ii`,e,t),Ud=(e,t)=>!!samp.callNative(`ToggleVehicleSirenEnabled`,`ii`,e,t),Wd=(e,t)=>!!samp.callNative(`SetVehicleParamsSirenState`,`ii`,e,+t),Gd=e=>!!samp.callNative(`IsVehicleSirenEnabled`,`i`,e),Kd=e=>samp.callNative(`GetVehicleModelCount`,`i`,e),qd=e=>samp.callNative(`GetVehicleLastDriver`,`i`,e),Jd=e=>samp.callNative(`GetVehicleDriver`,`i`,e),Yd=()=>samp.callNative(`GetVehicleModelsUsed`,``),Xd=e=>!!samp.callNative(`GetVehicleSirenState`,`i`,e),Zd=e=>samp.callNative(`GetVehicleLandingGearState`,`i`,e),Qd=e=>samp.callNativeFloat(`GetVehicleHydraReactorAngle`,`i`,e),$d=e=>samp.callNativeFloat(`GetVehicleTrainSpeed`,`i`,e),ef=e=>{let[t=0,n=0,r=0,i=0,a=0,o=0,s=0,c=0,l=0,u]=samp.callNative(`GetVehicleMatrix`,`iFFFFFFFFF`,e);return{rightX:t,rightY:n,rightZ:r,upX:i,upY:a,upZ:o,atX:s,atY:c,atZ:l,ret:!!u}},tf=e=>{let[t=0,n=0,r=0,i=0,a]=samp.callNative(`GetRandomCarColPair`,`iIIII`,e);return{color:[t,n,r,i],ret:!!a}},nf=(e,t=255)=>samp.callNative(`CarColIndexToColour`,`ii`,e,t),rf=(e,t,n,r,i,a,o,s,c)=>samp.callNative(`CreateVehicle`,`iffffiiii`,e,t,n,r,i,z(a),z(o),s,c),af=e=>!!samp.callNative(`DestroyVehicle`,`i`,e),of=(e,t)=>!!samp.callNative(`IsVehicleStreamedIn`,`ii`,e,t),sf=e=>{let[t,n,r,i]=samp.callNative(`GetVehiclePos`,`iFFF`,e);return{x:t,y:n,z:r,ret:!!i}},cf=(e,t,n,r)=>!!samp.callNative(`SetVehiclePos`,`ifff`,e,t,n,r),lf=e=>{let[t,n]=samp.callNative(`GetVehicleZAngle`,`iF`,e);return{angle:t,ret:!!n}},uf=e=>{let[t,n,r,i]=samp.callNative(`GetVehicleRotation`,`iFFF`,e);return{x:t,y:n,z:r,ret:i}},df=e=>{let[t,n,r,i,a]=samp.callNative(`GetVehicleRotationQuat`,`iFFFF`,e);return{w:t,x:n,y:r,z:i,ret:!!a}},ff=(e,t,n,r)=>samp.callNativeFloat(`GetVehicleDistanceFromPoint`,`ifff`,e,t,n,r),pf=(e,t)=>!!samp.callNative(`SetVehicleZAngle`,`if`,e,t),mf=(e,t,n=b.UNSET,r=b.UNSET)=>!!samp.callNative(`SetVehicleParamsForPlayer`,`iiii`,e,t,n,r),hf=()=>{samp.callNative(`ManualVehicleEngineAndLights`,``)},gf=(e,t,n,r,i,a,o,s)=>!!samp.callNative(`SetVehicleParamsEx`,`iiiiiiii`,e,t,n,r,i,a,o,s),_f=e=>samp.callNative(`GetVehicleParamsEx`,`iIIIIIII`,e),vf=e=>samp.callNative(`GetVehicleParamsSirenState`,`i`,e),yf=(e,t=b.UNSET,n=b.UNSET,r=b.UNSET,i=b.UNSET)=>!!samp.callNative(`SetVehicleParamsCarDoors`,`iiiii`,e,+t,+n,+r,+i),bf=e=>{let[t,n,r,i,a]=samp.callNative(`GetVehicleParamsCarDoors`,`iIIII`,e);return{driver:t,passenger:n,backLeft:r,backRight:i,ret:!!a}},xf=(e,t=b.UNSET,n=b.UNSET,r=b.UNSET,i=b.UNSET)=>!!samp.callNative(`SetVehicleParamsCarWindows`,`iiiii`,e,t,n,r,i),Sf=e=>{let[t,n,r,i,a]=samp.callNative(`GetVehicleParamsCarWindows`,`iIIII`,e);return{driver:t,passenger:n,backLeft:r,backRight:i,ret:!!a}},Cf=e=>!!samp.callNative(`SetVehicleToRespawn`,`i`,e),wf=(e,t)=>!!samp.callNative(`LinkVehicleToInterior`,`ii`,e,t),Tf=(e,t)=>!!samp.callNative(`AddVehicleComponent`,`ii`,e,t),Ef=(e,t)=>!!samp.callNative(`RemoveVehicleComponent`,`ii`,e,t),Df=(e,t,n)=>!!samp.callNative(`ChangeVehicleColor`,`iii`,e,z(t),z(n)),Of=(e,t)=>!!samp.callNative(`ChangeVehiclePaintjob`,`ii`,e,t),kf=(e,t)=>!!samp.callNative(`SetVehicleHealth`,`if`,e,t),Af=e=>{let[t,n]=samp.callNative(`GetVehicleHealth`,`iF`,e);return{health:t,ret:!!n}},jf=(e,t)=>!!samp.callNative(`AttachTrailerToVehicle`,`ii`,e,t),Mf=e=>!!samp.callNative(`DetachTrailerFromVehicle`,`i`,e),Nf=e=>!!samp.callNative(`IsTrailerAttachedToVehicle`,`i`,e),Pf=e=>samp.callNative(`GetVehicleTrailer`,`i`,e),Ff=(e,t)=>!!samp.callNative(`SetVehicleNumberPlate`,`is`,e,t),If=e=>samp.callNative(`GetVehicleModel`,`i`,e),Lf=(e,t)=>samp.callNative(`GetVehicleComponentInSlot`,`ii`,e,t),Rf=e=>samp.callNative(`GetVehicleComponentType`,`i`,e),zf=e=>!!samp.callNative(`RepairVehicle`,`i`,e),Bf=e=>{let[t,n,r,i]=samp.callNative(`GetVehicleVelocity`,`iFFF`,e);return{x:t,y:n,z:r,ret:!!i}},Vf=(e,t,n,r)=>!!samp.callNative(`SetVehicleVelocity`,`ifff`,e,t,n,r),Hf=(e,t,n,r)=>!!samp.callNative(`SetVehicleAngularVelocity`,`ifff`,e,t,n,r),Uf=e=>{let[t,n,r,i,a]=samp.callNative(`GetVehicleDamageStatus`,`iIIII`,e);return{panels:t,doors:n,lights:r,tires:i,ret:!!a}},Wf=(e,t,n,r,i)=>!!samp.callNative(`UpdateVehicleDamageStatus`,`iiiii`,e,t,n,r,i),Gf=(e,t)=>{let[n,r,i,a]=samp.callNative(`GetVehicleModelInfo`,`iiFFF`,e,t);return{x:n,y:r,z:i,ret:!!a}},Kf=(e,t)=>!!samp.callNative(`SetVehicleVirtualWorld`,`ii`,e,t),qf=e=>samp.callNative(`GetVehicleVirtualWorld`,`i`,e),Jf=e=>!!samp.callNative(`IsValidVehicle`,`i`,e),Yf=(e,t,n,r,i,a,o)=>samp.callNative(`AddStaticVehicle`,`iffffii`,e,t,n,r,i,z(a),z(o)),Xf=(e,t,n,r,i,a,o,s,c)=>samp.callNative(`AddStaticVehicleEx`,`iffffiiii`,e,t,n,r,i,z(a),z(o),s,c),Zf=e=>!!samp.callNative(`ShowVehicle`,`i`,e),Qf=e=>!!samp.callNative(`HideVehicle`,`i`,e),$f=e=>!!samp.callNative(`IsVehicleHidden`,`i`,e),ep=e=>!!samp.callNative(`IsPlayerInModShop`,`i`,e),tp=e=>!!samp.callNative(`GetPlayerSirenState`,`i`,e),np=e=>samp.callNative(`GetPlayerLandingGearState`,`i`,e),rp=e=>samp.callNative(`GetPlayerHydraReactorAngle`,`i`,e),ip=e=>samp.callNativeFloat(`GetPlayerTrainSpeed`,`i`,e),ap=(e,t)=>samp.callNative(`GetVehicleOccupant`,`ii`,e,t),op=e=>samp.callNative(`GetVehicleMaxPassengers`,`i`,e),sp=e=>samp.callNative(`CountVehicleOccupants`,`i`,e),cp=(e,t)=>!!samp.callNative(`VehicleCanHaveComponent`,`ii`,e,t),lp=e=>samp.callNative(`GetVehicleSeats`,`i`,e),up=(e,t,n,r,i)=>!!samp.callNative(`SetPlayerCheckpoint`,`iffff`,e,t,n,r,i),dp=e=>!!samp.callNative(`DisablePlayerCheckpoint`,`i`,e),fp=(e,t,n,r,i,a,o,s,c)=>!!samp.callNative(`SetPlayerRaceCheckpoint`,`iifffffff`,e,t,n,r,i,a,o,s,c),pp=e=>!!samp.callNative(`DisablePlayerRaceCheckpoint`,`i`,e),mp=e=>!!samp.callNative(`IsPlayerInCheckpoint`,`i`,e),hp=e=>!!samp.callNative(`IsPlayerInRaceCheckpoint`,`i`,e),gp=e=>!!samp.callNative(`IsPlayerCheckpointActive`,`i`,e),_p=e=>{let[t=0,n=0,r=0,i=0,a]=samp.callNative(`GetPlayerCheckpoint`,`iFFFF`,e);return{fX:t,fY:n,fZ:r,fSize:i,ret:!!a}},vp=e=>!!samp.callNative(`IsPlayerRaceCheckpointActive`,`i`,e),yp=e=>{let[t=0,n=0,r=0,i=0,a=0,o=0,s=0,c]=samp.callNative(`GetPlayerRaceCheckpoint`,`iFFFFFFF`,e);return{fX:t,fY:n,fZ:r,fNextX:i,fNextY:a,fNextZ:o,fSize:s,ret:!!c}},bp=e=>!!samp.callNative(`IsMenuDisabled`,`i`,e),xp=(e,t)=>!!samp.callNative(`IsMenuRowDisabled`,`ii`,e,t),Sp=(e,t)=>samp.callNative(`GetMenuItems`,`ii`,e,t),Cp=e=>{let[t=0,n=0,r]=samp.callNative(`GetMenuPos`,`iFF`,e);return{fX:t,fY:n,ret:!!r}},wp=e=>{let[t=0,n=0,r]=samp.callNative(`GetMenuColumnWidth`,`iFF`,e);return{fColumn1:t,fColumn2:n,ret:!!r}},Tp=e=>!!samp.callNative(`DestroyMenu`,`i`,e),Ep=(e,t)=>!!samp.callNative(`ShowMenuForPlayer`,`ii`,e,t),Dp=(e,t)=>!!samp.callNative(`HideMenuForPlayer`,`ii`,e,t),Op=e=>!!samp.callNative(`IsValidMenu`,`i`,e),kp=e=>!!samp.callNative(`DisableMenu`,`i`,e),Ap=(e,t)=>!!samp.callNative(`DisableMenuRow`,`ii`,e,t),jp=e=>samp.callNative(`GetPlayerMenu`,`i`,e),Mp=e=>!!samp.callNative(`IsValid3DTextLabel`,`i`,e),Np=(e,t)=>!!samp.callNative(`Is3DTextLabelStreamedIn`,`ii`,e,t),Pp=e=>samp.callNative(`Get3DTextLabelColor`,`i`,e),Fp=e=>{let[t=0,n=0,r=0,i]=samp.callNative(`Get3DTextLabelPos`,`iFFF`,e);return{fX:t,fY:n,fZ:r,ret:!!i}},Ip=(e,t)=>!!samp.callNative(`Set3DTextLabelDrawDistance`,`ii`,e,t),Lp=e=>samp.callNativeFloat(`Get3DTextLabelDrawDistance`,`i`,e),Rp=e=>!!samp.callNative(`Get3DTextLabelLOS`,`i`,e),zp=(e,t)=>!!samp.callNative(`Set3DTextLabelLOS`,`ii`,e,t),Bp=(e,t)=>!!samp.callNative(`Set3DTextLabelVirtualWorld`,`ii`,e,t),Vp=e=>samp.callNative(`Get3DTextLabelVirtualWorld`,`i`,e),Hp=e=>{let[t=0,n=0,r]=samp.callNative(`Get3DTextLabelAttachedData`,`i`,e);return{attachedPlayerId:t,attachedVehicleId:n,ret:!!r}},Up=e=>!!samp.callNative(`Delete3DTextLabel`,`i`,e),Wp=(e,t,n,r,i)=>!!samp.callNative(`Attach3DTextLabelToPlayer`,`iifff`,e,t,n,r,i),Gp=(e,t,n,r,i)=>!!samp.callNative(`Attach3DTextLabelToVehicle`,`iifff`,e,t,n,r,i),Kp=(e,t)=>!!samp.callNative(`IsValidPlayer3DTextLabel`,`ii`,e,t),qp=(e,t)=>samp.callNative(`GetPlayer3DTextLabelColor`,`ii`,e,t),Jp=(e,t)=>{let[n=0,r=0,i=0,a]=samp.callNative(`GetPlayer3DTextLabelPos`,`iiFFF`,e,t);return{fX:n,fY:r,fZ:i,ret:!!a}},Yp=(e,t,n)=>!!samp.callNative(`SetPlayer3DTextLabelDrawDistance`,`iii`,e,t,n),Xp=(e,t)=>samp.callNativeFloat(`GetPlayer3DTextLabelDrawDistance`,`ii`,e,t),Zp=(e,t)=>!!samp.callNative(`GetPlayer3DTextLabelLOS`,`ii`,e,t),Qp=(e,t,n)=>!!samp.callNative(`SetPlayer3DTextLabelLOS`,`iii`,e,t,n),$p=(e,t)=>samp.callNative(`GetPlayer3DTextLabelVirtualWorld`,`ii`,e,t),em=(e,t,n)=>!!samp.callNative(`SetPlayer3DTextLabelVirtualWorld`,`iii`,e,t,n),tm=(e,t)=>{let[n=0,r=0,i]=samp.callNative(`GetPlayer3DTextLabelAttachedData`,`ii`,e,t);return{attachedPlayerId:n,attachedVehicleId:r,ret:!!i}},nm=(e,t)=>!!samp.callNative(`DeletePlayer3DTextLabel`,`ii`,e,t),rm=e=>!!samp.callNative(`IsValidGangZone`,`i`,e),im=(e,t)=>!!samp.callNative(`IsPlayerInGangZone`,`ii`,e,t),am=(e,t)=>!!samp.callNative(`IsGangZoneVisibleForPlayer`,`ii`,e,t),om=(e,t)=>samp.callNative(`GangZoneGetColorForPlayer`,`ii`,e,t),sm=(e,t)=>samp.callNative(`GangZoneGetFlashColorForPlayer`,`ii`,e,t),cm=(e,t)=>!!samp.callNative(`IsGangZoneFlashingForPlayer`,`ii`,e,t),lm=e=>{let[t=0,n=0,r=0,i=0,a]=samp.callNative(`GangZoneGetPos`,`iFFFF`,e);return{fMinX:t,fMinY:n,fMaxX:r,fMaxY:i,ret:!!a}},um=(e,t)=>!!samp.callNative(`UseGangZoneCheck`,`ii`,e,t),dm=(e,t,n,r)=>samp.callNative(`GangZoneCreate`,`ffff`,e,t,n,r),fm=e=>!!samp.callNative(`GangZoneDestroy`,`i`,e),pm=(e,t,n)=>!!samp.callNative(`GangZoneShowForPlayer`,`iii`,e,t,z(n)),mm=(e,t)=>!!samp.callNative(`GangZoneShowForAll`,`ii`,e,z(t)),hm=(e,t)=>!!samp.callNative(`GangZoneHideForPlayer`,`ii`,e,t),gm=e=>!!samp.callNative(`GangZoneHideForAll`,`i`,e),_m=(e,t,n)=>!!samp.callNative(`GangZoneFlashForPlayer`,`iii`,e,t,z(n)),vm=(e,t)=>!!samp.callNative(`GangZoneFlashForAll`,`ii`,e,z(t)),ym=(e,t)=>!!samp.callNative(`GangZoneStopFlashForPlayer`,`ii`,e,t),bm=e=>!!samp.callNative(`GangZoneStopFlashForAll`,`i`,e),xm=(e,t,n,r,i)=>samp.callNative(`CreatePlayerGangZone`,`iffff`,e,t,n,r,i),Sm=(e,t)=>!!samp.callNative(`PlayerGangZoneDestroy`,`ii`,e,t),Cm=(e,t,n)=>!!samp.callNative(`PlayerGangZoneShow`,`iii`,e,t,n),wm=(e,t)=>!!samp.callNative(`PlayerGangZoneHide`,`ii`,e,t),Tm=(e,t,n)=>!!samp.callNative(`PlayerGangZoneFlash`,`iii`,e,t,n),Em=(e,t)=>!!samp.callNative(`PlayerGangZoneStopFlash`,`ii`,e,t),Dm=(e,t)=>!!samp.callNative(`IsValidPlayerGangZone`,`ii`,e,t),Om=(e,t)=>!!samp.callNative(`IsPlayerInPlayerGangZone`,`ii`,e,t),km=(e,t)=>!!samp.callNative(`IsPlayerGangZoneVisible`,`ii`,e,t),Am=(e,t)=>samp.callNative(`PlayerGangZoneGetColor`,`ii`,e,t),jm=(e,t)=>samp.callNative(`PlayerGangZoneGetFlashColor`,`ii`,e,t),Mm=(e,t)=>!!samp.callNative(`IsPlayerGangZoneFlashing`,`ii`,e,t),Nm=(e,t)=>{let[n=0,r=0,i=0,a=0,o]=samp.callNative(`PlayerGangZoneGetPos`,`iiFFFF`,e,t);return{fMinX:n,fMinY:r,fMaxX:i,fMaxY:a,ret:!!o}},Pm=(e,t,n)=>!!samp.callNative(`UsePlayerGangZoneCheck`,`iii`,e,t,n),Fm=e=>!!samp.callNative(`IsValidTextDraw`,`i`,e),Im=(e,t)=>!!samp.callNative(`IsTextDrawVisibleForPlayer`,`ii`,e,t),Lm=e=>{let[t,n]=samp.callNative(`TextDrawGetString`,`iSi`,e,1024);return{str:t,ret:!!n}},Rm=(e,t,n)=>{samp.callNative(`TextDrawSetPos`,`iff`,e,t,n)},zm=e=>{let[t=0,n=0,r]=samp.callNative(`TextDrawGetLetterSize`,`iFF`,e);return{fX:t,fY:n,ret:!!r}},Bm=e=>{let[t=0,n=0,r]=samp.callNative(`TextDrawGetTextSize`,`iFF`,e);return{fX:t,fY:n,ret:!!r}},Vm=e=>{let[t=0,n=0,r]=samp.callNative(`TextDrawGetPos`,`iFF`,e);return{fX:t,fY:n,ret:!!r}},Hm=e=>samp.callNative(`TextDrawGetColor`,`i`,e),Um=e=>samp.callNative(`TextDrawGetBoxColor`,`i`,e),Wm=e=>samp.callNative(`TextDrawGetBackgroundColor`,`i`,e),Gm=e=>samp.callNative(`TextDrawGetShadow`,`i`,e),Km=e=>samp.callNative(`TextDrawGetOutline`,`i`,e),qm=e=>samp.callNative(`TextDrawGetFont`,`i`,e),Jm=e=>!!samp.callNative(`TextDrawIsBox`,`i`,e),Ym=e=>!!samp.callNative(`TextDrawIsProportional`,`i`,e),Xm=e=>!!samp.callNative(`TextDrawIsSelectable`,`i`,e),Zm=e=>samp.callNative(`TextDrawGetAlignment`,`i`,e),Qm=e=>samp.callNative(`TextDrawGetPreviewModel`,`i`,e),$m=e=>{let[t=0,n=0,r=0,i=0,a]=samp.callNative(`TextDrawGetPreviewRot`,`iFFFF`,e);return{fRotX:t,fRotY:n,fRotZ:r,fZoom:i,ret:!!a}},eh=e=>{let[t,n,r]=samp.callNative(`TextDrawGetPreviewVehCol`,`iII`,e);return{color1:t,color2:n,ret:!!r}},th=(e,t,n)=>!!samp.callNative(`TextDrawSetStringForPlayer`,`iia`,e,t,n),nh=(e,t,n)=>samp.callNative(`TextDrawCreate`,`ffa`,e,t,n),rh=e=>!!samp.callNative(`TextDrawDestroy`,`i`,e),ih=(e,t,n)=>!!samp.callNative(`TextDrawLetterSize`,`iff`,e,t,n),ah=(e,t,n)=>!!samp.callNative(`TextDrawTextSize`,`iff`,e,t,n),oh=(e,t)=>!!samp.callNative(`TextDrawAlignment`,`ii`,e,t),sh=(e,t)=>!!samp.callNative(`TextDrawColor`,`ii`,e,z(t)),ch=(e,t)=>!!samp.callNative(`TextDrawUseBox`,`ii`,e,t),lh=(e,t)=>!!samp.callNative(`TextDrawBoxColor`,`ii`,e,z(t)),uh=(e,t)=>!!samp.callNative(`TextDrawSetShadow`,`ii`,e,t),dh=(e,t)=>!!samp.callNative(`TextDrawSetOutline`,`ii`,e,t),fh=(e,t)=>!!samp.callNative(`TextDrawBackgroundColor`,`ii`,e,z(t)),ph=(e,t)=>!!samp.callNative(`TextDrawFont`,`ii`,e,t),mh=(e,t)=>!!samp.callNative(`TextDrawSetProportional`,`ii`,e,t),hh=(e,t)=>!!samp.callNative(`TextDrawSetSelectable`,`ii`,e,t),gh=(e,t)=>!!samp.callNative(`TextDrawShowForPlayer`,`ii`,e,t),_h=(e,t)=>!!samp.callNative(`TextDrawHideForPlayer`,`ii`,e,t),vh=e=>!!samp.callNative(`TextDrawShowForAll`,`i`,e),yh=e=>!!samp.callNative(`TextDrawHideForAll`,`i`,e),bh=(e,t)=>!!samp.callNative(`TextDrawSetString`,`ia`,e,t),xh=(e,t)=>!!samp.callNative(`TextDrawSetPreviewModel`,`ii`,e,t),Sh=(e,t,n,r,i=1)=>!!samp.callNative(`TextDrawSetPreviewRot`,`iffff`,e,t,n,r,i),Ch=(e,t,n)=>!!samp.callNative(`TextDrawSetPreviewVehCol`,`iii`,e,z(t),z(n)),wh=(e,t)=>!!samp.callNative(`SelectTextDraw`,`ii`,e,z(t)),Th=e=>!!samp.callNative(`CancelSelectTextDraw`,`i`,e),Eh=(e,t)=>!!samp.callNative(`IsValidPlayerTextDraw`,`ii`,e,t),Dh=(e,t)=>!!samp.callNative(`IsPlayerTextDrawVisible`,`ii`,e,t),Oh=(e,t)=>{let[n,r]=samp.callNative(`PlayerTextDrawGetString`,`iiSi`,e,t,1024);return{str:n,ret:!!r}},kh=(e,t,n,r)=>!!samp.callNative(`PlayerTextDrawSetPos`,`iiff`,e,t,n,r),Ah=(e,t)=>{let[n=0,r=0,i]=samp.callNative(`PlayerTextDrawGetLetterSize`,`iiFF`,e,t);return{fX:n,fY:r,ret:!!i}},jh=(e,t)=>{let[n=0,r=0,i]=samp.callNative(`PlayerTextDrawGetTextSize`,`iiFF`,e,t);return{fX:n,fY:r,ret:!!i}},Mh=(e,t)=>{let[n=0,r=0,i]=samp.callNative(`PlayerTextDrawGetPos`,`iiFF`,e,t);return{fX:n,fY:r,ret:!!i}},Nh=(e,t)=>samp.callNative(`PlayerTextDrawGetColor`,`ii`,e,t),Ph=(e,t)=>samp.callNative(`PlayerTextDrawGetBoxColor`,`ii`,e,t),Fh=(e,t)=>samp.callNative(`PlayerTextDrawGetBackgroundColor`,`ii`,e,t),Ih=(e,t)=>samp.callNative(`PlayerTextDrawGetShadow`,`ii`,e,t),Lh=(e,t)=>samp.callNative(`PlayerTextDrawGetOutline`,`ii`,e,t),Rh=(e,t)=>samp.callNative(`PlayerTextDrawGetFont`,`ii`,e,t),zh=(e,t)=>!!samp.callNative(`PlayerTextDrawIsBox`,`ii`,e,t),Bh=(e,t)=>!!samp.callNative(`PlayerTextDrawIsProportional`,`ii`,e,t),Vh=(e,t)=>!!samp.callNative(`PlayerTextDrawIsSelectable`,`ii`,e,t),Hh=(e,t)=>samp.callNative(`PlayerTextDrawGetAlignment`,`ii`,e,t),Uh=(e,t)=>samp.callNative(`PlayerTextDrawGetPreviewModel`,`ii`,e,t),Wh=(e,t)=>{let[n=0,r=0,i=0,a=0,o]=samp.callNative(`PlayerTextDrawGetPreviewRot`,`iiFFFF`,e,t);return{fRotX:n,fRotY:r,fRotZ:i,fZoom:a,ret:!!o}},Gh=(e,t)=>{let[n,r,i]=samp.callNative(`PlayerTextDrawGetPreviewVehCol`,`iiII`,e,t);return{color1:n,color2:r,ret:!!i}},Kh=(e,t,n,r)=>samp.callNative(`CreatePlayerTextDraw`,`iffa`,e,t,n,r),qh=(e,t)=>!!samp.callNative(`PlayerTextDrawDestroy`,`ii`,e,t),Jh=(e,t,n,r)=>!!samp.callNative(`PlayerTextDrawLetterSize`,`iiff`,e,t,n,r),Yh=(e,t,n,r)=>!!samp.callNative(`PlayerTextDrawTextSize`,`iiff`,e,t,n,r),Xh=(e,t,n)=>!!samp.callNative(`PlayerTextDrawAlignment`,`iii`,e,t,n),Zh=(e,t,n)=>!!samp.callNative(`PlayerTextDrawColor`,`iii`,e,t,z(n)),Qh=(e,t,n)=>!!samp.callNative(`PlayerTextDrawUseBox`,`iii`,e,t,n),$h=(e,t,n)=>!!samp.callNative(`PlayerTextDrawBoxColor`,`iii`,e,t,z(n)),eg=(e,t,n)=>!!samp.callNative(`PlayerTextDrawSetShadow`,`iii`,e,t,n),tg=(e,t,n)=>!!samp.callNative(`PlayerTextDrawSetOutline`,`iii`,e,t,n),ng=(e,t,n)=>!!samp.callNative(`PlayerTextDrawBackgroundColor`,`iii`,e,t,z(n)),rg=(e,t,n)=>!!samp.callNative(`PlayerTextDrawFont`,`iii`,e,t,n),ig=(e,t,n)=>!!samp.callNative(`PlayerTextDrawSetProportional`,`iii`,e,t,n),ag=(e,t,n)=>!!samp.callNative(`PlayerTextDrawSetSelectable`,`iii`,e,t,n),og=(e,t)=>!!samp.callNative(`PlayerTextDrawShow`,`ii`,e,t),sg=(e,t)=>!!samp.callNative(`PlayerTextDrawHide`,`ii`,e,t),cg=(e,t,n)=>!!samp.callNative(`PlayerTextDrawSetString`,`iia`,e,t,n),lg=(e,t,n)=>!!samp.callNative(`PlayerTextDrawSetPreviewModel`,`iii`,e,t,n),ug=(e,t,n,r,i,a)=>!!samp.callNative(`PlayerTextDrawSetPreviewRot`,`iiffff`,e,t,n,r,i,a),dg=(e,t,n,r)=>!!samp.callNative(`PlayerTextDrawSetPreviewVehCol`,`iiii`,e,t,n,r),fg=e=>samp.callNativeFloat(`GetObjectDrawDistance`,`i`,e),pg=e=>samp.callNativeFloat(`GetObjectMoveSpeed`,`i`,e),mg=(e,t)=>!!samp.callNativeFloat(`SetObjectMoveSpeed`,`if`,e,t),hg=e=>{let[t=0,n=0,r=0,i]=samp.callNative(`GetObjectMovingTargetPos`,`iFFF`,e);return{fX:t,fY:n,fZ:r,ret:!!i}},gg=e=>{let[t=0,n=0,r=0,i]=samp.callNative(`GetObjectTarget`,`iFFF`,e);return{fX:t,fY:n,fZ:r,ret:!!i}},_g=e=>{let[t=0,n=0,r=0,i=0,a=0,o=0,s]=samp.callNative(`GetObjectAttachedOffset`,`i`,e);return{fX:t,fY:n,fZ:r,fRotX:i,fRotY:a,fRotZ:o,ret:!!s}},vg=e=>!!samp.callNative(`GetObjectSyncRotation`,`i`,e),yg=(e,t)=>!!samp.callNative(`IsObjectMaterialSlotUsed`,`ii`,e,t),bg=(e,t)=>{let[n=0,r,i,a=0,o]=samp.callNative(`GetObjectMaterial`,`iiISiSiI`,e,t,64,64);return{modelId:n,txdName:r,textureName:i,materialColor:a,ret:!!o}},xg=(e,t,n,r,i,a,o,s=0)=>samp.callNative(`CreateObject`,`ifffffff`,e,t,n,r,i,a,o,s),Sg=(e,t,n,r,i,a,o,s)=>!!samp.callNative(`AttachObjectToVehicle`,`iiffffff`,e,t,n,r,i,a,o,s),Cg=(e,t,n,r,i,a,o,s,c,l=!0)=>!!samp.callNative(`AttachPlayerObjectToObject`,`iiiffffffi`,e,t,n,r,i,a,o,s,c,l),wg=(e,t,n,r,i,a,o,s,c=!0)=>!!samp.callNative(`AttachObjectToObject`,`iiffffffi`,e,t,n,r,i,a,o,s,c),Tg=(e,t,n,r,i,a,o,s)=>!!samp.callNative(`AttachObjectToPlayer`,`iiffffff`,e,t,n,r,i,a,o,s),Eg=(e,t)=>!!samp.callNative(`EditAttachedObject`,`ii`,e,t),Dg=(e,t,n,r)=>!!samp.callNative(`SetObjectPos`,`ifff`,e,t,n,r),Og=e=>{let[t,n,r,i]=samp.callNative(`GetObjectPos`,`iFFF`,e);return{x:t,y:n,z:r,ret:!!i}},kg=(e,t,n,r)=>!!samp.callNative(`SetObjectRot`,`ifff`,e,t,n,r),Ag=e=>{let[t,n,r,i]=samp.callNative(`GetObjectRot`,`iFFF`,e);return{x:t,y:n,z:r,ret:!!i}},jg=e=>samp.callNative(`GetObjectModel`,`i`,e),Mg=e=>!!samp.callNative(`SetObjectNoCameraCol`,`i`,e),Ng=e=>!!samp.callNative(`IsObjectNoCameraCol`,`i`,e),Pg=e=>!!samp.callNative(`IsValidObject`,`i`,e),Fg=e=>!!samp.callNative(`DestroyObject`,`i`,e),Ig=(e,t,n,r,i,a,o,s)=>!!samp.callNative(`MoveObject`,`ifffffff`,e,t,n,r,i,a,o,s),Lg=e=>!!samp.callNative(`StopObject`,`i`,e),Rg=e=>!!samp.callNative(`IsObjectMoving`,`i`,e),zg=(e,t)=>!!samp.callNative(`BeginObjectEditing`,`ii`,e,t),Bg=e=>!!samp.callNative(`BeginObjectSelecting`,`i`,e),Vg=e=>!!samp.callNative(`EndObjectEditing`,`i`,e),Hg=(e,t,n,r,i,a)=>!!samp.callNative(`SetObjectMaterial`,`iiissi`,e,t,n,r,i,z(a)),Ug=e=>!!samp.callNative(`SetObjectsDefaultCameraCol`,`i`,e),Wg=(e,t,n,r)=>!!samp.callNative(`AddCharModel`,`iiss`,e,t,n,r),Gg=(e,t,n,r,i)=>!!samp.callNative(`AddSimpleModel`,`iiiss`,e,t,n,r,i),Kg=(e,t,n,r,i,a,o)=>!!samp.callNative(`AddSimpleModelTimed`,`iiissii`,e,t,n,r,i,a,o),qg=(e,t)=>!!samp.callNative(`RedirectDownload`,`is`,e,t),Jg=e=>{let[t,n,r]=samp.callNative(`GetCustomModelPath`,`iSiSi`,e,255,255);return{dffPath:t,txdPath:n,ret:!!r}},Yg=e=>{let[t,n]=samp.callNative(`FindModelFileNameFromCRC`,`iSi`,e,255);return{name:t,ret:n}},Xg=e=>{let[t,n]=samp.callNative(`FindTextureFileNameFromCRC`,`iSi`,e,255);return{name:t,ret:n}},Zg=(e,t)=>{let[n=0,r=0,i=0,a=0,o=0,s=0,c=0,l=0,u=0,d=0,f=0,p=0,m=0,h]=samp.callNative(`GetPlayerAttachedObject`,`iiIIFFFFFFFFFII`,e,t);return{modelId:n,bone:r,fX:i,fY:a,fZ:o,fRotX:s,fRotY:c,fRotZ:l,fScaleX:u,fScaleY:d,fScaleZ:f,materialColor1:p,materialColor2:m,ret:!!h}},Qg=(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m)=>!!samp.callNative(`SetPlayerAttachedObject`,`iiiifffffffffii`,e,t,n,r,i,a,o,s,c,l,u,d,f,z(p),z(m)),$g=(e,t)=>!!samp.callNative(`RemovePlayerAttachedObject`,`ii`,e,t),e_=(e,t)=>!!samp.callNative(`IsPlayerAttachedObjectSlotUsed`,`ii`,e,t),t_=e=>!!samp.callNative(`IsValidCustomModel`,`i`,e),n_=e=>{if(!t_(e))return null;let[t,n,r]=samp.callNative(`GetCustomModePath`,`iSiSi`,e,255,255);return{dffPath:t,txdPath:n,ret:r}},r_=e=>samp.callNative(`GetPlayerAnimationFlags`,`i`,e),i_=e=>samp.callNative(`GetPlayerLastSyncedTrailerID`,`i`,e),a_=e=>samp.callNative(`GetPlayerLastSyncedVehicleID`,`i`,e),o_=(e,t)=>samp.callNativeFloat(`GetPlayerObjectDrawDistance`,`ii`,e,t),s_=(e,t,n)=>!!samp.callNativeFloat(`SetPlayerObjectMoveSpeed`,`iif`,e,t,n),c_=(e,t)=>samp.callNativeFloat(`GetPlayerObjectMoveSpeed`,`ii`,e,t),l_=(e,t)=>{let[n=0,r=0,i=0,a]=samp.callNative(`GetPlayerObjectTarget`,`iiFFF`,e,t);return{fX:n,fY:r,fZ:i,ret:!!a}},u_=(e,t)=>{let[n=0,r=0,i=0,a]=samp.callNative(`GetPlayerObjectMovingTargetPos`,`iiFFF`,e,t);return{fX:n,fY:r,fZ:i,ret:!!a}},d_=(e,t)=>{let[n=0,r=0,i=0,a=0,o=0,s=0,c]=samp.callNative(`GetPlayerObjectAttachedOffset`,`iiFFFFFF`,e,t);return{fX:n,fY:r,fZ:i,fRotX:a,fRotY:o,fRotZ:s,ret:!!c}},f_=(e,t)=>!!samp.callNative(`GetPlayerObjectSyncRotation`,`ii`,e,t),p_=(e,t,n)=>!!samp.callNative(`IsPlayerObjectMaterialSlotUsed`,`iii`,e,t,n),m_=(e,t,n)=>{let[r=0,i,a,o=0,s]=samp.callNative(`GetPlayerObjectMaterial`,`iiiISiSiI`,e,t,n,64,64);return{modelId:r,txdName:i,textureName:a,materialColor:o,ret:!!s}},h_=(e,t)=>!!samp.callNative(`IsPlayerObjectNoCameraCol`,`ii`,e,t),g_=e=>samp.callNative(`GetPlayerCameraTargetPlayerObj`,`i`,e),__=(e,t)=>!!samp.callNative(`BeginPlayerObjectEditing`,`ii`,e,t),v_=(e,t,n,r,i,a,o,s,c=0)=>samp.callNative(`CreatePlayerObject`,`iifffffff`,e,t,n,r,i,a,o,s,c),y_=(e,t,n,r,i,a,o,s,c)=>!!samp.callNative(`AttachPlayerObjectToVehicle`,`iiiffffff`,e,t,n,r,i,a,o,s,c),b_=(e,t,n,r,i)=>samp.callNative(`SetPlayerObjectPos`,`iifff`,e,t,n,r,i),x_=(e,t)=>{let[n,r,i,a]=samp.callNative(`GetPlayerObjectPos`,`iiFFF`,e,t);return{x:n,y:r,z:i,ret:!!a}},S_=(e,t,n,r,i)=>samp.callNative(`SetPlayerObjectRot`,`iifff`,e,t,n,r,i),C_=(e,t)=>{let[n,r,i,a]=samp.callNative(`GetPlayerObjectRot`,`iiFFF`,e,t);return{x:n,y:r,z:i,ret:!!a}},w_=(e,t)=>samp.callNative(`GetPlayerObjectModel`,`ii`,e,t),T_=(e,t)=>!!samp.callNative(`SetPlayerObjectNoCameraCollision`,`ii`,e,t),E_=(e,t)=>!!samp.callNative(`IsValidPlayerObject`,`ii`,e,t),D_=(e,t)=>!!samp.callNative(`DestroyPlayerObject`,`ii`,e,t),O_=(e,t,n,r,i,a,o,s,c)=>!!samp.callNative(`MovePlayerObject`,`iifffffff`,e,t,n,r,i,a,o,s,c),k_=(e,t)=>!!samp.callNative(`StopPlayerObject`,`ii`,e,t),A_=(e,t)=>!!samp.callNative(`IsPlayerObjectMoving`,`ii`,e,t),j_=(e,t,n,r,i,a,o,s,c)=>!!samp.callNative(`AttachPlayerObjectToPlayer`,`iiiffffff`,e,t,n,r,i,a,o,s,c),M_=(e,t,n,r,i,a,o)=>!!samp.callNative(`SetPlayerObjectMaterial`,`iiiissi`,e,t,n,r,i,a,z(o)),N_=e=>!!samp.callNative(`IsValidPickup`,`i`,e),P_=(e,t)=>!!samp.callNative(`IsPickupStreamedIn`,`ii`,e,t),F_=e=>{let[t,n,r,i]=samp.callNative(`GetPickupPos`,`iFFF`,e);return{fX:t,fY:n,fZ:r,ret:!!i}},I_=e=>samp.callNative(`GetPickupModel`,`i`,e),L_=e=>samp.callNative(`GetPickupType`,`i`,e),R_=e=>samp.callNative(`GetPickupVirtualWorld`,`i`,e),z_=(e,t,n,r,i=!0)=>!!samp.callNative(`SetPickupPos`,`ifffi`,e,t,n,r,i),B_=(e,t,n=!0)=>!!samp.callNative(`SetPickupModel`,`iii`,e,t,n),V_=(e,t,n=!0)=>!!samp.callNative(`SetPickupType`,`iii`,e,t,n),H_=(e,t)=>!!samp.callNative(`SetPickupVirtualWorld`,`ii`,e,t),U_=(e,t)=>!!samp.callNative(`ShowPickupForPlayer`,`ii`,e,t),W_=(e,t)=>!!samp.callNative(`HidePickupForPlayer`,`ii`,e,t),G_=(e,t)=>!!samp.callNative(`IsPickupHiddenForPlayer`,`ii`,e,t),K_=(e,t,n,r,i,a)=>samp.callNative(`AddStaticPickup`,`iifffi`,e,t,n,r,i,a),q_=(e,t,n,r,i,a)=>samp.callNative(`CreatePickup`,`iifffi`,e,t,n,r,i,a),J_=e=>!!samp.callNative(`DestroyPickup`,`i`,e);function Y_(e,t,n,r,i,a,o=0){return samp.callNative(`CreatePlayerPickup`,`iiifffi`,e,t,n,r,i,a,o)}function X_(e,t){return!!samp.callNative(`DestroyPlayerPickup`,`ii`,e,t)}function Z_(e,t){return!!samp.callNative(`IsValidPlayerPickup`,`ii`,e,t)}function Q_(e,t){return!!samp.callNative(`IsPlayerPickupStreamedIn`,`ii`,e,t)}function $_(e,t){let[n,r,i,a]=samp.callNative(`GetPlayerPickupPos`,`iiFFF`,e,t);return{x:n,y:r,z:i,ret:!!a}}function ev(e,t,n,r,i,a=!0){return!!samp.callNative(`SetPlayerPickupPos`,`iifffi`,e,t,n,r,i,a)}function tv(e,t,n,r=!0){return!!samp.callNative(`SetPlayerPickupModel`,`iiii`,e,t,n,r)}function nv(e,t,n,r=!0){return!!samp.callNative(`SetPlayerPickupType`,`iiii`,e,t,n,r)}function rv(e,t,n){return!!samp.callNative(`SetPlayerPickupVirtualWorld`,`iii`,e,t,n)}function iv(e,t){return samp.callNative(`GetPlayerPickupModel`,`ii`,e,t)}function av(e,t){return samp.callNative(`GetPlayerPickupType`,`ii`,e,t)}function ov(e,t){return samp.callNative(`GetPlayerPickupVirtualWorld`,`ii`,e,t)}const sv=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}]]]),cv=e=>{let t=sv.get(e.toUpperCase());return t===void 0?!1:t},lv=(e,t)=>{let n=cv(e);if(n)return t===`null`?!0:n.some(e=>e.n===t)},uv=(e,t)=>{let n=cv(e);if(n)return n.find(e=>e.n===t)?.d},dv=(e,t)=>{let n=t.replace(`-`,``)===`utf8`?e:R.encodeToBuf(e,t);return[n instanceof Array?`a`:`s`,n]},fv=(e,t,n)=>{let r=dv(n,e.charset);return!!samp.callNative(`SendClientMessage`,`ii${r[0]}`,e.id,z(t),r[1])},pv=(e,t,n)=>e.map(e=>fv(e,t,n)).every(e=>e===!0),mv=(e,t,n)=>{let r=dv(n,e.charset);return!!samp.callNative(`SendPlayerMessageToPlayer`,`ii${r[0]}`,e.id,t,r[1])},hv=(e,t,n)=>e.map(e=>mv(e,t,n)).every(e=>e===!0),gv=(e,t,n)=>{let{charset:r}=e,{style:i,caption:a,info:o,button1:s,button2:c}=n,[l,u]=dv(a||``,r),[,d]=dv(o||``,r),[,f]=dv(s||``,r),[,p]=dv(c||``,r);return!!samp.callNative(`ShowPlayerDialog`,`iii${l.repeat(4)}`,e.id,t,i,u,d,f,p)},_v=e=>{let[t,n]=samp.callNative(`GetPlayerName`,`iAi`,e.id,u.MAX_PLAYER_NAME);return{name:R.decodeFromBuf(R.getValidStr(t),e.charset),ret:n}},vv=(e,t)=>samp.callNative(`SetPlayerName`,`ia`,e.id,R.encodeToBuf(t,e.charset)),yv=(e,t,n)=>{let r=R.encodeToBuf(t,n);return!!samp.callNative(`BanEx`,`ia`,e,r)},bv=(e,t=`utf8`)=>{let[n,r]=dv(e,t);return!!samp.callNative(`SendRconCommand`,n,r)},xv=(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h)=>{let g=R.encodeToBuf(t,e);return samp.callNative(`CreateDynamic3DTextLabel`,`aiffffiiiiiifii`,g,n,r,i,a,o,s,c,l,u,d,f,p,m,h)},Sv=(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h)=>{let g=R.encodeToBuf(e,h);return samp.callNative(`CreateDynamic3DTextLabelEx`,`aiffffiiifaaaaiiiii`,g,t,n,r,i,a,o,s,c,l,u,d,f,p,m,u.length,d.length,f.length,p.length)},Cv=(e,t,n,r)=>{let i=R.encodeToBuf(n,r);return samp.callNative(`UpdateDynamic3DTextLabelText`,`iia`,e,t,i)},wv=(e,t)=>{let[n,r]=samp.callNative(`GetDynamic3DTextLabelText`,`iAi`,e,1024);return{text:R.decodeFromBuf(R.getValidStr(n),t),ret:r}},Tv=(e,t,n,r,i,a,o,s,c,l,u)=>{let d=R.encodeToBuf(r,e),f=R.encodeToBuf(a,e);return samp.callNative(`SetDynamicObjectMaterialText`,`iiaiaiiiii`,t,n,d,i,f,o,s,c,l,u)},Ev=(e,t,n=`utf8`)=>{let[r,i,a,o,s]=samp.callNative(`GetDynamicObjectMaterial`,`iiIAAIii`,e,t,64,64);return{modelId:r,txdName:R.decodeFromBuf(R.getValidStr(i),n),textureName:R.decodeFromBuf(R.getValidStr(a),n),materialColor:o,ret:s}},Dv=(e,t,n)=>{let[r,i,a,o,s,c,l,u,d]=samp.callNative(`GetDynamicObjectMaterialText`,`iiAIAIIIIIii`,e,t,2048,32);return{text:R.decodeFromBuf(r,n),materialSize:i,fontFace:R.decodeFromBuf(a,n),fontSize:o,bold:s,fontColor:c,backColor:l,textAlignment:u,ret:d}},Ov=(e,t,n,r,i,a)=>{let o=R.encodeToBuf(t,a);return!!samp.callNative(`SetPlayerChatBubble`,`iaifi`,e,o,z(n),r,i)},kv=(e,t,n,r,i,a,o,s=!0,c,l,u)=>{let d=R.encodeToBuf(n,e),f=R.encodeToBuf(a,e);return!!samp.callNative(`SetObjectMaterialText`,`iaiiaiiiii`,t,d,r,i,f,o,s,z(c),z(l),u)},Av=(e,t,n)=>{let[r,i=0,a,o=0,s=0,c=0,l=0,u=0,d]=samp.callNative(`GetObjectMaterialText`,`iiAiIAiIIIII`,e,t,2048,32);return{text:R.decodeFromBuf(r,n),materialSize:i,fontFace:R.decodeFromBuf(a,n),fontSize:o,bold:s,fontColor:c,backColor:l,textAlignment:u,ret:!!d}},jv=(e,t,n,r,i,a,o,s,c=!0,l,u,d)=>{let f=R.encodeToBuf(r,e),p=R.encodeToBuf(o,e);return!!samp.callNative(`SetPlayerObjectMaterialText`,`iiaiiaiiiii`,t,n,f,i,a,p,s,c,z(l),z(u),d)},Mv=(e,t,n,r)=>{let[i,a=0,o,s=0,c=0,l=0,u=0,d=0,f]=samp.callNative(`GetPlayerObjectMaterialText`,`iiiAiIAiIIIII`,e,t,n,2048,32);return{text:R.decodeFromBuf(i,r),materialSize:a,fontFace:R.decodeFromBuf(o,r),fontSize:s,bold:c,fontColor:l,backColor:u,textAlignment:d,ret:!!f}},Nv=(e,t,n,r,i,a,o,s,c=!1)=>{let l=R.encodeToBuf(t,e);return samp.callNative(`Create3DTextLabel`,`aiffffii`,l,z(n),r,i,a,o,s,c)},Pv=(e,t,n,r,i,a,o,s,c,l,u)=>{let d=R.encodeToBuf(n,e);return samp.callNative(`CreatePlayer3DTextLabel`,`iaiffffiii`,t,d,z(r),i,a,o,s,c,l,u)},Fv=(e,t,n,r)=>{let i=R.encodeToBuf(r,e);return!!samp.callNative(`Update3DTextLabelText`,`iia`,t,z(n),i)},Iv=(e,t,n,r,i)=>{let a=R.encodeToBuf(i,e);return!!samp.callNative(`UpdatePlayer3DTextLabelText`,`iiia`,t,n,z(r),a)},Lv=(e,t)=>{let[n,r]=samp.callNative(`Get3DTextLabelText`,`iAi`,t,144);return{text:R.decodeFromBuf(n,e),buf:n,ret:!!r}},Rv=(e,t,n)=>{let[r,i]=samp.callNative(`GetPlayer3DTextLabelText`,`iiAi`,t,n,144);return{text:R.decodeFromBuf(r,e),buf:r,ret:!!i}},zv=(e,t,n)=>{let[r,i]=samp.callNative(`GetMenuColumnHeader`,`iiAi`,e,t,31);return{header:R.decodeFromBuf(r,n),buf:r,ret:!!i}},Bv=(e,t,n,r)=>{let[i,a]=samp.callNative(`GetMenuItem`,`iiiAi`,e,t,n,31);return{item:R.decodeFromBuf(i,r),buf:i,ret:!!a}},Vv=(e,t,n,r,i,a,o)=>samp.callNative(`CreateMenu`,`aiffff`,R.encodeToBuf(e,o),t,n,r,i,a),Hv=(e,t,n,r)=>samp.callNative(`AddMenuItem`,`iia`,e,t,R.encodeToBuf(n,r)),Uv=(e,t,n,r)=>!!samp.callNative(`SetMenuColumnHeader`,`iia`,e,t,R.encodeToBuf(n,r)),B=Symbol(`internalPlayerProps`),Wv=new Map,Gv=new Map,Kv=new Map,V=new Map,qv=new Map,Jv=new Map,Yv=new Map,Xv=new Map,Zv=new Map,Qv=new Map,H=new Map,$v=new Map,ey=new Map,ty=new Map,ny=new Map,ry=new Map,iy=new Map,ay=new Map,oy=new Map,sy=new Map,U=new Map,cy=new Map,ly=new Map,W=new Map,uy=new Map,G=new Map,[dy]=L({name:`OnGameModeInit`,identifier:``}),[fy,py]=L({name:`OnGameModeInitReal`,isNative:!1});dy(()=>{Promise.resolve().then(py)});const[my]=L({name:`OnGameModeExit`,identifier:``}),[hy]=L({name:`OnIncomingConnection`,identifier:`isi`,defaultValue:!1,beforeEach(e,t,n){return{playerId:e,ipAddress:t,port:n}}}),[gy]=L({name:`OnRconCommandI18n`,identifier:`ai`,defaultValue:!1,beforeEach(e){return{buffer:e,cmd:R.decodeFromBuf(e)}}}),[_y]=L({name:`OnRconLoginAttemptI18n`,identifier:`aiaii`,beforeEach(e,t,n){return{ip:R.decodeFromBuf(e),password:R.decodeFromBuf(t),success:!!n,ipBuffer:e,passwordBuffer:t}}}),vy=[],yy=[],by=new Map,xy=async e=>{try{return await new Promise((t,n)=>{let r=vy.findIndex(t=>t.name===e);if(r===-1)return;let i=vy[r];function a(n){n.length&&by.set(e,n),vy.splice(r,1),yy.push(i),setTimeout(t)}let o=i.load();o instanceof Promise?o.then(a).catch(n):a(o)})}catch(t){throw new T(`script ${e} load fail\nerr:${t}`)}},Sy=async e=>{try{return await new Promise((t,n)=>{let r=yy.findIndex(t=>t.name===e);if(r===-1)return;let i=yy[r],a=by.get(e);a&&(a.forEach(e=>e()),by.delete(e));function o(){yy.splice(r,1),vy.push(i),setTimeout(t)}let s=i.unload();s instanceof Promise?s.then(o).catch(n):o()})}catch(t){throw new T(`script ${e} unload fail\n${t}`)}},Cy=async e=>{await Sy(e),await xy(e)},wy=e=>by.has(e);fy(async({next:e})=>{let t=vy.map(e=>e.name);for(let e of t)await xy(e);return e()}),my(async({next:e})=>{let t=yy.map(e=>e.name);for(let e of t)await Sy(e);return e()});const Ty=function(e,...t){if(vy.some(t=>t.name===e.name)||yy.some(t=>t.name===e.name))throw new T(`script ${e.name} has already been applied`);e.load=e.load.bind(e,...t),vy.push(e)};var Ey=n((e=>{e.__esModule=!0,e.distance=e.closest=void 0;var t=new Uint32Array(65536),n=function(e,n){for(var r=e.length,i=n.length,a=1<<r-1,o=-1,s=0,c=r,l=r;l--;)t[e.charCodeAt(l)]|=1<<l;for(l=0;l<i;l++){var u=t[n.charCodeAt(l)],d=u|s;u|=(u&o)+o^o,s|=~(u|o),o&=u,s&a&&c++,o&a&&c--,s=s<<1|1,o=o<<1|~(d|s),s&=d}for(l=r;l--;)t[e.charCodeAt(l)]=0;return c},r=function(e,n){for(var r=n.length,i=e.length,a=[],o=[],s=Math.ceil(r/32),c=Math.ceil(i/32),l=0;l<s;l++)o[l]=-1,a[l]=0;for(var u=0;u<c-1;u++){for(var d=0,f=-1,p=u*32,m=Math.min(32,i)+p,h=p;h<m;h++)t[e.charCodeAt(h)]|=1<<h;for(var l=0;l<r;l++){var g=t[n.charCodeAt(l)],ee=o[l/32|0]>>>l&1,te=a[l/32|0]>>>l&1,_=g|d,ne=((g|te)&f)+f^f|g|te,v=d|~(ne|f),y=f&ne;v>>>31^ee&&(o[l/32|0]^=1<<l),y>>>31^te&&(a[l/32|0]^=1<<l),v=v<<1|ee,y=y<<1|te,f=y|~(_|v),d=v&_}for(var h=p;h<m;h++)t[e.charCodeAt(h)]=0}for(var re=0,ie=-1,ae=u*32,oe=Math.min(32,i-ae)+ae,h=ae;h<oe;h++)t[e.charCodeAt(h)]|=1<<h;for(var se=i,l=0;l<r;l++){var g=t[n.charCodeAt(l)],ee=o[l/32|0]>>>l&1,te=a[l/32|0]>>>l&1,_=g|re,ne=((g|te)&ie)+ie^ie|g|te,v=re|~(ne|ie),y=ie&ne;se+=v>>>i-1&1,se-=y>>>i-1&1,v>>>31^ee&&(o[l/32|0]^=1<<l),y>>>31^te&&(a[l/32|0]^=1<<l),v=v<<1|ee,y=y<<1|te,ie=y|~(_|v),re=v&_}for(var h=ae;h<oe;h++)t[e.charCodeAt(h)]=0;return se},i=function(e,t){if(e.length<t.length){var i=t;t=e,e=i}return t.length===0?e.length:e.length<=32?n(e,t):r(e,t)};e.distance=i,e.closest=function(e,t){for(var n=1/0,r=0,a=0;a<t.length;a++){var o=i(e,t[a]);o<n&&(n=o,r=a)}return t[r]}}))();const Dy=new Map,Oy=new Map,ky=/[^/\s]+/gi,Ay={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`}},[jy,My]=L({name:`OnCommandReceived`,isNative:!1,throwOnError:!0,beforeEach(e,t,n,r,i,a,o,s,c){return{player:e,command:t,cmdText:n,buffer:r,strictMainCmd:i,noStrictMainCmd:a,hasStrict:o,hasNoStrict:s,subcommand:c}}}),[Ny,Py]=L({name:`OnCommandPerformed`,isNative:!1,beforeEach(e,t,n,r,i,a,o,s,c){return{player:e,command:t,cmdText:n,buffer:r,strictMainCmd:i,noStrictMainCmd:a,hasStrict:o,hasNoStrict:s,subcommand:c}}}),[Fy,Iy]=L({name:`OnCommandError`,isNative:!1,defaultValue:!1,beforeEach(e,t,n,r,i,a,o,s,c,l){return{player:e,error:t,command:n,cmdText:r,buffer:i,strictMainCmd:a,noStrictMainCmd:o,hasStrict:s,hasNoStrict:c,subcommand:l,getSuggestion(){let e=(0,Ey.closest)(r,[...Dy.keys(),...Oy.keys()]);return{suggestion:e,distance:(0,Ey.distance)(r,e)}}}}}),[Ly,Ry]=L({name:`OnPlayerCommandTextI18n`,identifier:`iai`,defaultValue:!1,beforeEach(e,t){let n=Wv.get(e),r=t,i=``;return typeof t==`string`?(i=t,r=R.encodeToBuf(i,`utf-8`)):i=R.decodeFromBuf(t,n.charset),{player:n,buffer:r,cmdText:i}}}),[zy,By]=L({name:`OnPlayerCommandTextRaw`,isNative:!1,defaultValue:!1,beforeEach(e,t,n){return{player:e,buffer:t,cmdText:n}}});function Vy(e){let t=[],n=``;for(let r=0;r<e.length;r++)n+=e[r]+` `,t.push(n.trimEnd());return t.reverse()}Ly(({player:e,buffer:t,cmdText:n,next:r})=>{let i=By(e,t,n);if(i)return i;let a=n.match(ky)||[],o=Vy(a),s=o.find(e=>Dy.has(e)),c=o.map(e=>e.toLowerCase()).find(e=>Oy.has(e)),l=!!s,u=!!c,d=a.join(` `),f=[],p=[[s,Dy,!0],[c,Oy,!1]],m=[d,n,t,s,c,l,u,f];if(l||u){let e=p[0][0]||p[1][0];f=d.replace(e,``).trim().split(` `)}else return Iy(e,Ay.NOT_EXIST,...m);try{if(!My(e,...m))return Iy(e,Ay.RECEIVED_REJECTED,...m)}catch(t){let n=typeof t==`object`?t:{error:t};return Iy(e,{...Ay.RECEIVED_THROW,...n},...m)}for(let[r,i,a]of p){if(!r)continue;let[,o]=i.get(r);if(!o(e,r,f,n,t,a))return Iy(e,Ay.REJECTED,...m)}return Py(e,d,n,t,s,c,l,u,f)?(r(),!0):Iy(e,Ay.PERFORMED,...m)});function Hy(e,t,n,r,i,a){return{player:e,mainCommand:t,subcommand:n,cmdText:r,buffer:i,isStrict:a}}var Uy=class e{static caseSensitive=!1;constructor(){}static on(t,n){let r=e.caseSensitive,i,a;typeof t==`string`||t instanceof Array?(i=t,a=n):(i=t.command,a=t.run,t.caseSensitive!==void 0&&(r=t.caseSensitive));let o=Array.isArray(i)?i:[i],s=o.find(e=>!e.match(ky));if(s)return console.log(`error command ${s} format`),()=>{};let c=r?Dy:Oy,l=o.map(e=>{let t=e.replaceAll(`/`,``),n=r?t:t.toLowerCase();if(!c.has(n)){let e=L({name:r?`$`+n:n,isNative:!1,beforeEach:Hy});c.set(n,e)}let[i]=c.get(n);return[n,i(a)]});return()=>{l.forEach(e=>{let[t,n]=e;n()===0&&c.delete(t)})}}static off(e){(Array.isArray(e)?e:[e]).forEach(e=>{let t=e.replaceAll(`/`,``);Dy.has(t)&&(I.has(t)&&I.delete(t),Dy.has(t)&&Dy.delete(t)),t=t.toLowerCase(),Oy.has(t)&&(I.has(t)&&I.delete(t),Oy.has(t)&&Oy.delete(t))})}static enableCaseSensitive(){e.caseSensitive=!0}static disableCaseSensitive(){e.caseSensitive=!1}static isCaseSensitive(){return e.caseSensitive}static simulate(e,t){return Ry(e.id,t)}},K=class{constructor(){throw new T(`This is a static class and cannot be instantiated.`)}static onInit=fy;static onExit=my;static onIncomingConnection=hy;static onRconCommand=gy;static onRconLoginAttempt=_y;static use(e,...t){return Ty(e,...t),this}static loadUseScript=xy;static reloadUseScript=Cy;static unloadUseScript=Sy;static isUseScriptLoaded=wy;static enableCmdCaseSensitive=Uy.enableCaseSensitive;static disableCmdCaseSensitive=Uy.disableCaseSensitive;static isCmdCaseSensitive=Uy.isCaseSensitive;static supportAllNickname(){for(let e=0;e<=255;e++)this.isNickNameCharacterAllowed(e)||this.allowNickNameCharacter(e,!0)}static setWeather(e){if(e<0||e>255)throw new T(`The valid weather value is only 0 to 255`);ra(e)}static setWorldTime(e){if(e<0||e>23)throw new T(`The valid hour value is only 0 to 23`);ea(e)}static getWorldTime=ta;static setTeamCount=wa;static sendRconCommand=bv;static addPlayerClass=Ta;static addPlayerClassEx=Ea;static createExplosion(e,t,n,r,i){if(r<0||r>13)throw new T(`The valid explosion type value is only 0 to 13`);return oa(e,t,n,r,i)}static manualVehicleEngineAndLights=hf;static blockIpAddress=Ga;static unBlockIpAddress=Ka;static getServerTickRate=ma;static addCharModel=Wg;static getCustomModelPath=Jg;static addSimpleModel(e,t,n,r,i){return this.checkSimpleModel(e,t,n,r,i)?Gg(e,t,n,r,i):!1}static addSimpleModelTimed(e,t,n,r,i,a,o){return this.checkSimpleModel(e,t,n,r,i,a,o)?Kg(e,t,n,r,i,a,o):!1}static checkSimpleModel(e,t,n,r,i,a,o){if(e<-1)throw new T(`AddSimpleModel - Error virtual world`);if(t<0)throw new T(`AddSimpleModel - Error baseId`);if(n>u.MAX_CUSTOM_OBJECT_ID||n<u.MIN_CUSTOM_OBJECT_ID)throw new T(`AddSimpleModel - Error newId range`);if(r.trim().length===0)throw new T(`AddSimpleModel - Empty dffName`);if(i.trim().length===0)throw new T(`AddSimpleModel - Empty txdName`);if(a!==void 0&&(a<0||a>23))throw new T(`AddSimpleModel - Error time on range`);if(o!==void 0&&(o<0||o>23))throw new T(`AddSimpleModel - Error time off range`);return!0}static isValidCustomModel=t_;static getCustomModePath=n_;static getConsoleVarAsString(e,t=`utf8`){let{consoleVarBuf:n,ret:r}=Ri(e);return{consoleVar:R.decodeFromBuf(R.getValidStr(n),t),ret:r}}static getRestartTime=Gi;static setRestartTime=Wi;static allowAdminTeleport=Mi;static isAdminTeleportAllowed=Ni;static allowInteriorWeapons=Pi;static areInteriorWeaponsAllowed=Fi;static areAllAnimationsEnabled=Ii;static enableAllAnimations=Li;static enableStuntBonusForAll=ga;static enableVehicleFriendlyFire=na;static enableZoneNames=sa;static disableInteriorEnterExits=la;static setGameModeText=Zi;static getGravity=ia;static setGravity=aa;static showNameTags=Qi;static disableNameTagLOS=da;static usePlayerPedAnims=ca;static showPlayerMarkers=$i;static limitPlayerMarkerRadius=pa;static limitGlobalChatRadius=fa;static setNameTagDrawDistance=ua;static findModelFileNameFromCRC=Yg;static findTextureFileNameFromCRC=Xg;static getWeaponName=ba;static setObjectsDefaultCameraCollision=Ug;static vectorSize=Xi;static clearBanList=Ya;static isBanned=Xa;static isValidNickName=Ti;static allowNickNameCharacter=Ei;static isNickNameCharacterAllowed=Di;static addServerRule=Oi;static setServerRule=ki;static isValidServerRule=Ai;static removeServerRule=ji;static getWeaponSlot=ya;static getAvailableClasses=xa;static getPlayerClass=Sa;static editPlayerClass=Ca;static toggleChatTextReplacement=_a;static chatTextReplacementToggled=va;static getConsoleVarAsInt=zi;static getConsoleVarAsBool=Bi;static getWeather=Vi;static getServerRuleFlag=Hi;static setServerRuleFlags=Ui;static getAnimationName=ha};const q={skip:!1};K.onInit(({next:e})=>(q.skip=!1,e())),K.onExit(({next:e})=>(q.skip=!0,e()));var J=class e{sourceInfo=null;isStatic=!1;static createdCount=0;_id=c.VEHICLE_ID;get id(){return this._id}constructor(t,n=!1){if(typeof t==`number`){if(t===c.VEHICLE_ID)throw new Yr(`Invalid id`);let n=e.getInstance(t);if(n)return n;this._id=t,Gv.set(this._id,this),this.isValid()&&e.createdCount++}else this.sourceInfo=t,this.isStatic=n}create(){if(this.id!==c.VEHICLE_ID)throw new Yr(`Cannot create again`);if(!this.sourceInfo)throw new Yr(`Cannot create with only id`);let{modelId:t,x:n,y:r,z:i,zAngle:a,color:o,respawnDelay:s,addSiren:l}=this.sourceInfo;if(this.isStatic){if(s===void 0){this._id=e.__inject__.addStatic(t,n,r,i,a,o[0],o[1]);return}this._id=e.__inject__.addStaticEx(t,n,r,i,a,o[0],o[1],s||-1,l||!1)}else this._id=e.__inject__.create(t,n,r,i,a,o[0],o[1],s||-1,l||!1);if(this._id===c.VEHICLE_ID||e.createdCount===u.MAX_VEHICLES)throw new Yr(`Cannot create vehicle`);e.createdCount++,Gv.set(this._id,this)}destroy(){if(this.id===c.VEHICLE_ID&&!q.skip)throw new Yr(`Cannot destroy the vehicle before create`);q.skip||e.__inject__.destroy(this._id),e.createdCount--,Gv.delete(this._id),this._id=c.VEHICLE_ID,e.getInstances().length||(e.createdCount=0)}addComponent(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.addComponent(this.id,t)}removeComponent(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.removeComponent(this.id,t)}getComponentInSlot(t){return this.id===c.VEHICLE_ID?0:e.__inject__.getComponentInSlot(this.id,t)}linkToInterior(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.linkToInterior(this.id,t)}setVirtualWorld(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.setVirtualWorld(this.id,t)}getVirtualWorld(){return this.id===c.VEHICLE_ID?0:e.__inject__.getVirtualWorld(this.id)}repair(){return this.id===c.VEHICLE_ID?!1:e.__inject__.repair(this.id)}setPos(t,n,r){return this.id===c.VEHICLE_ID?!1:e.__inject__.setPos(this.id,t,n,r)}getPos(){return e.__inject__.getPos(this.id)}getHealth(){return e.__inject__.getHealth(this.id)}setHealth(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.setHealth(this.id,t)}isPlayerIn(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.isPlayerIn(t.id,this.id)}putPlayerIn(t,n){if(this.id===c.VEHICLE_ID||n<0)return 0;if(n>4)throw new Yr(`If the seat is invalid or is taken, will cause a crash when they EXIT the vehicle.`);return e.__inject__.putPlayerIn(t.id,this.id,n)}getZAngle(){return e.__inject__.getZAngle(this.id)}setZAngle(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.setZAngle(this.id,t)}setNumberPlate(t){if(this.id===c.VEHICLE_ID)return!1;if(t.length<1||t.length>32)throw new Yr(`The length of the number plate ranges up to 32 characters`);if(!/^[a-zA-Z0-9]+$/.test(t))throw new Yr(`number plates only allow letters and numbers`);return e.__inject__.setNumberPlate(this.id,t)}changeColors(t,n){return this.id===c.VEHICLE_ID?!1:e.__inject__.changeColors(this.id,t,n)}setVelocity(t,n,r){return this.id===c.VEHICLE_ID?!1:e.__inject__.setVelocity(this.id,t,n,r)}getVelocity(){return e.__inject__.getVelocity(this.id)}getSpeed(e=180){if(this.id===c.VEHICLE_ID)return 0;let{x:t,y:n,z:r}=this.getVelocity();return Xi(t,n,r)*e}setAngularVelocity(t,n,r){return this.id===c.VEHICLE_ID?!1:e.__inject__.setAngularVelocity(this.id,t,n,r)}getDamageStatus(){return e.__inject__.getDamageStatus(this.id)}updateDamageStatus(t,n,r,i){return e.__inject__.updateDamageStatus(this.id,t,n,r,i)}getDistanceFromPoint(t,n,r){return e.__inject__.getDistanceFromPoint(this.id,t,n,r)}getModel(){return e.__inject__.getModel(this.id)}static getModelInfo(t,n){return e.__inject__.getModelInfo(t,n)}getModelInfo(t){return e.getModelInfo(this.getModel(),t)}getRotation(){return e.__inject__.getRotation(this.id)}getRotationQuat(){return e.__inject__.getRotationQuat(this.id)}setRespawn(){return this.id===c.VEHICLE_ID?!1:e.__inject__.setRespawn(this.id)}isStreamedIn(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.isStreamedIn(this.id,t.id)}setParamsCarDoors(t=b.UNSET,n=b.UNSET,r=b.UNSET,i=b.UNSET){return this.id===c.VEHICLE_ID?!1:e.__inject__.setParamsCarDoors(this.id,t,n,r,i)}setParamsCarWindows(t=b.UNSET,n=b.UNSET,r=b.UNSET,i=b.UNSET){return this.id===c.VEHICLE_ID?0:e.__inject__.setParamsCarWindows(this.id,t,n,r,i)}getParamsCarDoors(){return e.__inject__.getParamsCarDoors(this.id)}getParamsCarWindows(){return e.__inject__.getParamsCarWindows(this.id)}setParamsEx(t,n,r,i,a,o,s){return this.id===c.VEHICLE_ID?!1:e.__inject__.setParamsEx(this.id,t,n,r,i,a,o,s)}getParamsEx(){if(this.id===c.VEHICLE_ID)return{engine:b.UNSET,lights:b.UNSET,alarm:b.UNSET,doors:b.UNSET,bonnet:b.UNSET,boot:b.UNSET,objective:b.UNSET,ret:!1};let[t,n,r,i,a,o,s,l]=e.__inject__.getParamsEx(this.id);return{engine:t,lights:n,alarm:r,doors:i,bonnet:a,boot:o,objective:s,ret:!!l}}toggleEngine(e){if(this.id===c.VEHICLE_ID)return 0;let{lights:t,alarm:n,doors:r,bonnet:i,boot:a,objective:o}=this.getParamsEx();return this.setParamsEx(e,t,n,r,i,a,o)}toggleLights(e){if(this.id===c.VEHICLE_ID)return 0;let{engine:t,alarm:n,doors:r,bonnet:i,boot:a,objective:o}=this.getParamsEx();return this.setParamsEx(t,e,n,r,i,a,o)}toggleAlarm(e){if(this.id===c.VEHICLE_ID)return 0;let{engine:t,lights:n,doors:r,bonnet:i,boot:a,objective:o}=this.getParamsEx();return this.setParamsEx(t,n,e,r,i,a,o)}toggleDoors(e){if(this.id===c.VEHICLE_ID)return 0;let{engine:t,lights:n,alarm:r,bonnet:i,boot:a,objective:o}=this.getParamsEx();return this.setParamsEx(t,n,r,e,i,a,o)}toggleBonnet(e){if(this.id===c.VEHICLE_ID)return 0;let{engine:t,lights:n,alarm:r,doors:i,boot:a,objective:o}=this.getParamsEx();return this.setParamsEx(t,n,r,i,e,a,o)}toggleBoot(e){if(this.id===c.VEHICLE_ID)return 0;let{engine:t,lights:n,alarm:r,doors:i,bonnet:a,objective:o}=this.getParamsEx();return this.setParamsEx(t,n,r,i,a,e,o)}toggleObjective(e){if(this.id===c.VEHICLE_ID)return 0;let{engine:t,lights:n,alarm:r,doors:i,bonnet:a,boot:o}=this.getParamsEx();return this.setParamsEx(t,n,r,i,a,o,e)}getParamsSirenState(){return this.id===c.VEHICLE_ID?b.UNSET:e.__inject__.getParamsSirenState(this.id)}setParamsForPlayer(t,n=b.UNSET,r=b.UNSET){return this.id===c.VEHICLE_ID?!1:e.__inject__.setParamsForPlayer(this.id,t.id,n,r)}isTrailerAttached(){return this.id===c.VEHICLE_ID?!1:e.__inject__.isTrailerAttached(this.id)}changePaintjob(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.changePaintjob(this.id,t)}attachTrailer(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.attachTrailer(t.id,this.id)}detachTrailer(){this.isTrailerAttached()&&e.__inject__.detachTrailer(this.id)}getTrailer(){return e.getInstance(Pf(this.id))}isValid(){return q.skip&&this.id!==c.VEHICLE_ID?!0:e.isValid(this.id)}getMatrix(){return e.__inject__.getMatrix(this.id)}getTrainSpeed(){return this.id===c.VEHICLE_ID?0:e.__inject__.getTrainSpeed(this.id)}getHydraReactorAngle(){return this.id===c.VEHICLE_ID?0:e.__inject__.getHydraReactorAngle(this.id)}getLandingGearState(){return this.id===c.VEHICLE_ID?0:e.__inject__.getLandingGearState(this.id)}getSirenState(){return this.id===c.VEHICLE_ID?!1:e.__inject__.getSirenState(this.id)}getDriver(){return Wv.get(Jd(this.id))}getLastDriver(){return Wv.get(qd(this.id))}isSirenEnabled(){return e.__inject__.isSirenEnabled(this.id)}toggleSirenEnabled(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.toggleSirenEnabled(this.id,t)}setParamsSirenState(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.setParamsSirenState(this.id,t)}isDead(){return this.id===c.VEHICLE_ID?!0:e.__inject__.isDead(this.id)}setDead(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.setDead(this.id,t)}setBeenOccupied(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.setBeenOccupied(this.id,t)}getRespawnTick(){return this.id===c.VEHICLE_ID?0:e.__inject__.getRespawnTick(this.id)}setRespawnTick(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.setRespawnTick(this.id,t)}isOccupied(){return this.id===c.VEHICLE_ID?!1:e.__inject__.isOccupied(this.id)}hasBeenOccupied(){return this.id===c.VEHICLE_ID?!1:e.__inject__.hasBeenOccupied(this.id)}getOccupiedTick(){return this.id===c.VEHICLE_ID?0:e.__inject__.getOccupiedTick(this.id)}setOccupiedTick(t){return this.id===c.VEHICLE_ID?0:e.__inject__.setOccupiedTick(this.id,t)}getCab(){return this.id===c.VEHICLE_ID?0:e.__inject__.getCab(this.id)}getRespawnDelay(){return this.id===c.VEHICLE_ID?0:e.__inject__.getRespawnDelay(this.id)}setRespawnDelay(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.setRespawnDelay(this.id,t)}getNumberPlate(){return e.__inject__.getNumberPlate(this.id)}getInterior(){return this.id===c.VEHICLE_ID?0:e.__inject__.getInterior(this.id)}getPaintjob(){return this.id===c.VEHICLE_ID?c.VEHICLE_ID:e.__inject__.getPaintjob(this.id)}getColors(){return e.__inject__.getColors(this.id)}setSpawnInfo(t,n,r,i,a,o,s,l=-2,u=-2){return this.id===c.VEHICLE_ID?!1:e.__inject__.setSpawnInfo(this.id,t,n,r,i,a,z(o),z(s),l,u)}getSpawnInfo(){return e.__inject__.getSpawnInfo(this.id)}getRandomColorPair(){return e.__inject__.getRandomColorPair(this.getModel())}show(){return this.id===c.VEHICLE_ID?!1:e.__inject__.show(this.id)}hide(){return this.id===c.VEHICLE_ID?!1:e.__inject__.hide(this.id)}isHidden(){return this.id===c.VEHICLE_ID?!1:e.__inject__.isHidden(this.id)}getOccupant(t){return e.__inject__.getOccupant(this.id,t)}getMaxPassengers(){return e.__inject__.getMaxPassengers(this.getModel())}countOccupants(){return e.__inject__.countOccupants(this.getModel())}canHaveComponent(t){return this.id===c.VEHICLE_ID?!1:e.__inject__.canHaveComponent(this.getModel(),t)}getSeats(){return e.__inject__.getSeats(this.getModel())}static getMaxPassengers(t){return e.__inject__.getMaxPassengers(t)}static getRandomColorPair(t){return e.__inject__.getRandomColorPair(t)}static getComponentType(t){return e.__inject__.getComponentType(t)}static colorIndexToColor(t,n=255){return e.__inject__.colorIndexToColor(t,n)}static isValid(t){return e.__inject__.isValid(t)}static getModelsUsed(){return e.__inject__.getModelsUsed()}static getModelCount(t){return e.__inject__.getModelCount(t)}static canHaveComponent(t,n){return e.__inject__.canHaveComponent(t,n)}static getSeats(t){return e.__inject__.getSeats(t)}static getInstance(e){return Gv.get(e)}static getInstances(){return[...Gv.values()]}static __inject__={addStatic:Yf,addStaticEx:Xf,create:rf,destroy:af,addComponent:Tf,removeComponent:Ef,getComponentInSlot:Lf,linkToInterior:wf,setVirtualWorld:Kf,getVirtualWorld:qf,repair:zf,setPos:cf,getPos:sf,getHealth:Af,setHealth:kf,isPlayerIn:sc,putPlayerIn:Rs,getZAngle:lf,setZAngle:pf,setNumberPlate:Ff,changeColors:Df,setVelocity:Vf,getVelocity:Bf,setAngularVelocity:Hf,getDamageStatus:Uf,updateDamageStatus:Wf,getDistanceFromPoint:ff,getModel:If,getModelInfo:Gf,getRotation:uf,getRotationQuat:df,setRespawn:Cf,isStreamedIn:of,setParamsCarDoors:yf,setParamsCarWindows:xf,getParamsCarDoors:bf,getParamsCarWindows:Sf,setParamsEx:gf,getParamsEx:_f,getParamsSirenState:vf,setParamsForPlayer:mf,isTrailerAttached:Nf,changePaintjob:Of,attachTrailer:jf,detachTrailer:Mf,getMatrix:ef,getTrainSpeed:$d,getHydraReactorAngle:Qd,getLandingGearState:Zd,getSirenState:Xd,getDriver:Jd,getLastDriver:qd,isSirenEnabled:Gd,toggleSirenEnabled:Ud,setParamsSirenState:Wd,isDead:Bd,setDead:Vd,setBeenOccupied:Hd,getRespawnTick:Rd,setRespawnTick:zd,isOccupied:Ld,hasBeenOccupied:Id,getOccupiedTick:Pd,setOccupiedTick:Fd,getCab:Nd,getRespawnDelay:Md,setRespawnDelay:jd,getNumberPlate:Ad,getInterior:kd,getPaintjob:Od,getColors:Dd,setSpawnInfo:Ed,getSpawnInfo:Td,getRandomColorPair:tf,show:Zf,hide:Qf,isHidden:$f,getOccupant:ap,getMaxPassengers:op,countOccupants:sp,getComponentType:Rf,colorIndexToColor:nf,isValid:Jf,getModelsUsed:Yd,getModelCount:Kd,canHaveComponent:cp,getSeats:lp}},Y=class e{sourceInfo=null;_id=c.OBJECT_ID;_player=null;get id(){return this._id}constructor(t,n){if(typeof t==`number`){if(t===c.OBJECT_ID)throw new k(`Invalid id`);n&&(this._player=n);let r=e.getInstance(t,n);if(r)return r;this._id=t,this.isGlobal()?sy.set(this._id,this):n&&(U.has(n)||U.set(n,new Map),U.get(this.getPlayer()).set(this.id,this))}else this.sourceInfo=t,this._player=null}create(){if(!this.sourceInfo)throw new k(`Cannot create with only id`);if(this.id!==c.OBJECT_ID)throw new k(`Cannot create again`);let{modelId:t,x:n,y:r,z:i,rx:a,ry:o,rz:s,drawDistance:l=0}=this.sourceInfo;if(this.isGlobal()){if(this._id=e.__inject__.create(t,n,r,i,a,o,s,l),this.id===c.OBJECT_ID||e.getInstances().length===u.MAX_OBJECTS)throw new k(`Cannot create object`);return sy.set(this._id,this),this}let d=this.getPlayerId();if(d===c.PLAYER_ID)return this;let f=this.getPlayer();if(this._id=e.__inject__.createPlayer(d,t,n,r,i,a,o,s,l),this.id===c.OBJECT_ID||e.getInstances(f).length===u.MAX_OBJECTS)throw new k(`Cannot create player object`);return U.has(f)||U.set(f,new Map),U.get(this.getPlayer()).set(this.id,this),this}destroy(){if(this.id===c.OBJECT_ID)throw new k(`Cannot destroy before create`);if(this.isGlobal())q.skip||e.__inject__.destroy(this.id),sy.delete(this.id);else{let t=this.getPlayerId();if(t===c.PLAYER_ID)return this;let n=this.getPlayer();if(q.skip||e.__inject__.destroyPlayer(t,this.id),U.has(n)){let e=U.get(n);e.delete(this.id),e.size===0&&U.delete(n)}}return this._id=c.OBJECT_ID,this}isGlobal(){return!(this.sourceInfo?this.sourceInfo.player:this._player)}isPlayer(){return!this.isGlobal()}getPlayer(){return this._player?this._player:this.sourceInfo&&this.sourceInfo.player?this.sourceInfo.player:null}getPlayerId(){let e=this.getPlayer();return e?e.id:c.PLAYER_ID}isValid(){return q.skip&&this.id!==c.OBJECT_ID?!0:this.isGlobal()?e.isValid(this.id):e.isValid(this.id,this.getPlayerId())}getModel(){return this.sourceInfo?this.sourceInfo.modelId:this.isGlobal()?e.__inject__.getModel(this.id):e.__inject__.getModelPlayer(this.getPlayerId(),this.id)}getPos(){if(this.id===c.OBJECT_ID)throw new k(`Cannot get position before create`);return this.isGlobal()?e.__inject__.getPos(this.id):e.__inject__.getPosPlayer(this.getPlayerId(),this.id)}setPos(t,n,r){if(this.id===c.OBJECT_ID)throw new k(`Cannot set position before create`);return this.isGlobal()?e.__inject__.setPos(this.id,t,n,r):e.__inject__.setPosPlayer(this.getPlayerId(),this.id,t,n,r)}getRot(){if(this.id===c.OBJECT_ID)throw new k(`Cannot get rotation before create`);return this.isGlobal()?e.__inject__.getRot(this.id):e.__inject__.getRotPlayer(this.getPlayerId(),this.id)}setRot(t,n,r){if(this.id===c.OBJECT_ID)throw new k(`Cannot set rotation before create`);return this.isGlobal()?e.__inject__.setRot(this.id,t,n,r):e.__inject__.setRotPlayer(this.getPlayerId(),this.id,t,n,r)}move(t,n,r,i,a,o,s){if(this.id===c.OBJECT_ID)throw new k(`Cannot start moving before create`);if(i<0)throw new k(`speed must not be less than 0`);if(i>120*1e3)throw new k(`speed more than 120 seconds, warn if it's not intentional`);return this.isMoving()&&this.stop(),this.isGlobal()?e.__inject__.move(this.id,t,n,r,i,a,o,s):e.__inject__.movePlayer(this.getPlayerId(),this.id,t,n,r,i,a,o,s)}stop(){if(this.id===c.OBJECT_ID)throw new k(`Cannot stop moving before create`);return this.isGlobal()?e.__inject__.stop(this.id):e.__inject__.stopPlayer(this.getPlayerId(),this.id)}isMoving(){return this.id===c.OBJECT_ID?!1:this.isGlobal()?e.__inject__.isMoving(this.id):e.__inject__.isMovingPlayer(this.getPlayerId(),this.id)}attachCamera(t){if(this.id===c.OBJECT_ID)return!1;if(this.isGlobal()){if(!t)throw new k(`Cannot attachCamera without player`);return e.__inject__.attachCamera(t.id,this.id)}return e.__inject__.attachCameraPlayer(this.getPlayerId(),this.id)}attachToObject(t,n,r,i,a,o,s,l=!0){if(this.id===c.OBJECT_ID||t.id===c.OBJECT_ID)throw new k(`Cannot attachToObject before both are created`);if(this.isGlobal()&&t.isGlobal())return e.__inject__.attachToObject(this.id,t.id,n,r,i,a,o,s,l);if(!this.isGlobal()&&!t.isGlobal())return e.__inject__.attachPlayerToObject(this.getPlayerId(),this.id,t.id,n,r,i,a,o,s,l);throw new k(`Cannot attachToObject with global and player object`)}attachToPlayer(t,n,r,i,a,o,s){return this.id===c.OBJECT_ID?!1:this.isGlobal()?e.__inject__.attachToPlayer(this.id,t.id,n,r,i,a,o,s):e.__inject__.attachPlayerToPlayer(this.getPlayerId(),this.id,t.id,n,r,i,a,o,s)}attachToVehicle(t,n,r,i,a,o,s){return this.id===c.OBJECT_ID?!1:this.isGlobal()?e.__inject__.attachToVehicle(this.id,t.id,n,r,i,a,o,s):e.__inject__.attachPlayerToVehicle(this.getPlayerId(),this.id,t.id,n,r,i,a,o,s)}edit(t){if(this.id===c.OBJECT_ID)throw new k(`Cannot edit before create`);if(this.isGlobal()){if(!t)throw new k(`Cannot edit without player`);return t.endObjectEditing(),e.__inject__.beginEditing(t.id,this.id)}let n=this.getPlayer();return n.endObjectEditing(),e.__inject__.beginEditingPlayer(n.id,this.id)}isMaterialUsed(t){return this.id===c.OBJECT_ID?!1:this.isGlobal()?e.__inject__.isMaterialSlotUsed(this.id,t):e.__inject__.isMaterialSlotUsedPlayer(this.getPlayerId(),this.id,t)}getMaterial(t){if(this.id===c.OBJECT_ID)throw new k(`Cannot get material before create`);return this.isGlobal()?e.__inject__.getMaterial(this.id,t):e.__inject__.getMaterialPlayer(this.getPlayerId(),this.id,t)}setMaterial(t,n,r,i,a=`#000`){if(this.id===c.OBJECT_ID)throw new k(`Cannot set material before create`);return this.isGlobal()?e.__inject__.setMaterial(this.id,t,n,r,i,z(a)):e.__inject__.setMaterialPlayer(this.getPlayerId(),this.id,t,n,r,i,z(a))}getMaterialText(t){if(this.id===c.OBJECT_ID)throw new k(`Cannot get material text before create`);return this.isGlobal()?e.__inject__.getMaterialText(this.id,t,this.sourceInfo?.charset||`utf8`):e.__inject__.getMaterialTextPlayer(this.getPlayerId(),this.id,t,this.sourceInfo?.charset||`utf8`)}setMaterialText(e=this.sourceInfo?.charset,t,n,r=Te.SIZE_256x128,i=`Arial`,a=24,o=!0,s=`#fff`,l=`#000`,u=0){if(this.id===c.OBJECT_ID)throw new k(`Cannot set material text before create`);return this.sourceInfo&&(this.sourceInfo.charset=e),this.isGlobal()?kv(e||`utf8`,this.id,t,n,r,i,a,o,z(s),z(l),u):jv(e||`utf8`,this.getPlayerId(),this.id,t,n,r,i,a,o,z(s),z(l),u)}setNoCameraCollision(){return this.id===c.OBJECT_ID?!1:this.isGlobal()?e.__inject__.setNoCameraCollision(this.id):e.__inject__.setNoCameraCollisionPlayer(this.getPlayerId(),this.id)}isNoCameraCol(){return this.id===c.OBJECT_ID?!1:this.isGlobal()?e.__inject__.isNoCameraCol(this.id):e.__inject__.isNoCameraColPlayer(this.getPlayerId(),this.id)}hasCameraCollision(){return!this.isNoCameraCol()}getDrawDistance(){return this.id===c.OBJECT_ID?0:this.isGlobal()?e.__inject__.getDrawDistance(this.id):e.__inject__.getDrawDistancePlayer(this.getPlayerId(),this.id)}setMoveSpeed(t){return this.id===c.OBJECT_ID?!1:this.isGlobal()?e.__inject__.setMoveSpeed(this.id,t):e.__inject__.setMoveSpeedPlayer(this.getPlayerId(),this.id,t)}getMoveSpeed(){return this.id===c.OBJECT_ID?0:this.isGlobal()?e.__inject__.getMoveSpeed(this.id):e.__inject__.getMoveSpeedPlayer(this.getPlayerId(),this.id)}getMovingTargetPos(){return this.isGlobal()?e.__inject__.getMovingTargetPos(this.id):e.__inject__.getMovingTargetPosPlayer(this.getPlayerId(),this.id)}getSyncRotation(){return this.isGlobal()?e.__inject__.getSyncRotation(this.id):e.__inject__.getSyncRotationPlayer(this.getPlayerId(),this.id)}getAttachedOffset(){return this.isGlobal()?e.__inject__.getAttachedOffset(this.id):e.__inject__.getAttachedOffsetPlayer(this.getPlayerId(),this.id)}getTarget(){return this.isGlobal()?e.__inject__.getTarget(this.id):e.__inject__.getTargetPlayer(this.getPlayerId(),this.id)}static isValid(t,n){return n===c.PLAYER_ID?!1:n===void 0?e.__inject__.isValid(t):e.__inject__.isValidPlayer(n,t)}static getInstance(e,t){if(!t)return sy.get(e);if(t.id!==c.PLAYER_ID)return U.get(t)?.get(e)}static getInstances(e){return e?e.id===c.PLAYER_ID?[]:[...U.get(e)?.values()||[]]:[...sy.values()]}static getPlayersInstances(){return Array.from(U.entries()).map(([e,t])=>[e,Array.from(t.values())])}static __inject__={create:xg,createPlayer:v_,destroy:Fg,destroyPlayer:D_,setMaterialText:kv,setMaterialTextPlayer:jv,setNoCameraCollision:Mg,setNoCameraCollisionPlayer:T_,isNoCameraCol:Ng,isNoCameraColPlayer:h_,getDrawDistance:fg,getDrawDistancePlayer:o_,setMoveSpeed:mg,setMoveSpeedPlayer:s_,getMoveSpeed:pg,getMoveSpeedPlayer:c_,getMovingTargetPos:hg,getMovingTargetPosPlayer:u_,getSyncRotation:vg,getSyncRotationPlayer:f_,getAttachedOffset:_g,getAttachedOffsetPlayer:d_,getTarget:gg,getTargetPlayer:l_,isValid:Pg,isValidPlayer:E_,getModel:jg,getModelPlayer:w_,getPos:Og,getPosPlayer:x_,getRot:Ag,getRotPlayer:C_,setPos:Dg,setPosPlayer:b_,setRot:kg,setRotPlayer:S_,move:Ig,movePlayer:O_,setMaterial:Hg,setMaterialPlayer:M_,stop:Lg,stopPlayer:k_,isMoving:Rg,isMovingPlayer:A_,attachCamera:kc,attachCameraPlayer:Ac,attachToObject:wg,attachToPlayer:Tg,attachToVehicle:Sg,attachPlayerToObject:Cg,attachPlayerToPlayer:j_,attachPlayerToVehicle:y_,beginEditing:zg,beginEditingPlayer:__,endEditing:Vg,getMaterial:bg,getMaterialPlayer:m_,isMaterialSlotUsed:yg,isMaterialSlotUsedPlayer:p_,getMaterialText:Av,getMaterialTextPlayer:Mv}};const[Wy]=L({name:`OnClientCheckResponse`,identifier:`iiii`,beforeEach(e,t,n,r){return{player:X.getInstance(e),actionId:t,memAddr:n,data:r}}}),[Gy,Ky]=L({name:`OnPlayerLocaleChange`,isNative:!1,beforeEach(e,t,n){return{player:e,newLocale:t,oldLocale:n}}}),[qy,Jy]=L({name:`OnPlayerCharsetChange`,isNative:!1,beforeEach(e,t,n){return{player:e,newCharset:t,oldCharset:n}}});var X=class e{static MAX_CHECK_ANDROID_DELAY=10;static SKIP_CHECK_ANDROID=!1;_charset=`ISO-8859-1`;_locale=`en_US`;[B]={isAndroid:!0,lastDrunkLevel:0,lastFps:0,lastUpdateTick:0,lastUpdateFpsTick:0,isPaused:!1,isRecording:!1};get lastDrunkLevel(){return this[B].lastDrunkLevel}get lastFps(){return this[B].lastFps}get lastUpdateTick(){return this[B].lastUpdateTick}get lastUpdateFpsTick(){return this[B].lastUpdateFpsTick}get isPaused(){return this[B].isPaused}get isRecording(){return this[B].isRecording}get charset(){return this._charset}set charset(e){let t=this._charset;this._charset=e,Jy(this,e,t)}get locale(){return this._locale}set locale(e){let t=this._locale;this._locale=e,Ky(this,e,t)}constructor(t){if(this.id=t,t<0||t>=u.MAX_PLAYERS)throw new qr(`Invalid player ID: ${t} (valid range: 0-${u.MAX_PLAYERS-1})`);let n=e.getInstance(t);if(n)return n;Wv.set(t,this)}sendClientMessage(t,n){return e.__inject__.sendClientMessage(this,t,n)}static sendClientMessageToAll(t,n){e.__inject__.sendClientMessageToAll(e.getInstances(),t,n)}sendMessageToPlayer(t,n){return e.__inject__.sendMessageToPlayer(t,this.id,n)}sendMessageToAll(t){return e.__inject__.sendMessageToAll(e.getInstances(),this.id,t)}isNpc(){return e.__inject__.isNpc(this.id)}getFps(){return this.lastFps}getDrunkLevel(){return e.__inject__.getDrunkLevel(this.id)}setDrunkLevel(t){if(t<0||t>5e4)throw new qr(`player's drunk level ranges from 0 to 50000`);return e.__inject__.setDrunkLevel(this.id,t)}allowTeleport(t){return e.__inject__.allowTeleport(this.id,t)}isTeleportAllowed(){return e.__inject__.isTeleportAllowed(this.id)}enableCameraTarget(t){return e.__inject__.enableCameraTarget(this.id,t)}enableStuntBonus(t){return e.__inject__.enableStuntBonus(this.id,t)}getInterior(){return e.__inject__.getInterior(this.id)}setInterior(t){return e.__inject__.setInterior(this.id,t)}showNameTag(t,n){return e.__inject__.showNameTag(this.id,t.id,n)}setColor(t){return e.__inject__.setColor(this.id,t)}getColor(){return e.__inject__.getColor(this.id)}setMapIcon(t,n,r,i,a,o,s){return e.__inject__.setMapIcon(this.id,t,n,r,i,a,o,s)}removeMapIcon(t){return e.__inject__.removeMapIcon(this.id,t)}setMarker(t,n){e.__inject__.setMarker(this.id,t.id,n)}getMarker(t){return e.__inject__.getMarker(this.id,t.id)}resetMoney(){return e.__inject__.resetMoney(this.id)}getMoney(){return e.__inject__.getMoney(this.id)}giveMoney(t){return e.__inject__.giveMoney(this.id,t)}resetWeapons(){return e.__inject__.resetWeapons(this.id)}spawn(){return e.__inject__.spawn(this.id)}setHealth(t){return e.__inject__.setHealth(this.id,t)}getHealth(){return e.__inject__.getHealth(this.id)}toggleClock(t){return e.__inject__.toggleClock(this.id,t)}toggleControllable(t){return e.__inject__.toggleControllable(this.id,t)}toggleSpectating(t){return e.__inject__.toggleSpectating(this.id,t)}spectatePlayer(t,n=ie.NORMAL){return e.__inject__.spectatePlayer(this.id,t.id,n)}spectateVehicle(t,n=ie.NORMAL){return e.__inject__.spectateVehicle(this.id,t.id,n)}forceClassSelection(){return e.__inject__.forceClassSelection(this.id)}kick(){return e.__inject__.kick(this.id)}ban(){return e.__inject__.ban(this.id)}banEx(t,n){return e.__inject__.banEx(this.id,t,n)}isAdmin(){return e.__inject__.isAdmin(this.id)}isInRangeOfPoint(t,n,r,i){return e.__inject__.isInRangeOfPoint(this.id,t,n,r,i)}isStreamedIn(t){return e.__inject__.isStreamedIn(this.id,t.id)}setSkin(t){return e.__inject__.setSkin(this.id,t)}getSkin(){return e.__inject__.getSkin(this.id)}isInAnyVehicle(){return e.__inject__.isInAnyVehicle(this.id)}getSpecialAction(){return e.__inject__.getSpecialAction(this.id)}setSpecialAction(t){return e.__inject__.setSpecialAction(this.id,t)}setScore(t){return e.__inject__.setScore(this.id,t)}getScore(){return e.__inject__.getScore(this.id)}getPing(){return e.__inject__.getPing(this.id)||0}setPos(t,n,r){return e.__inject__.setPos(this.id,t,n,r)}getPos(){return e.__inject__.getPos(this.id)}isSpectating(){return this.getState()===ae.SPECTATING}isWasted(){return this.getState()===ae.WASTED}getState(){return e.__inject__.getState(this.id)}getVersion(){return e.__inject__.getVersion(this.id)}setVirtualWorld(t){return e.__inject__.setVirtualWorld(this.id,t)}getVirtualWorld(){return e.__inject__.getVirtualWorld(this.id)}removeFromVehicle(){return e.__inject__.removeFromVehicle(this.id)}setWantedLevel(t){if(t<0||t>6)throw new qr(`player's wanted level ranges from 0 to 6`);return e.__inject__.setWantedLevel(this.id,t)}getWantedLevel(){return e.__inject__.getWantedLevel(this.id)}setFacingAngle(t){return e.__inject__.setFacingAngle(this.id,t)}getFacingAngle(){return e.__inject__.getFacingAngle(this.id)}setWeather(t){return e.__inject__.setWeather(this.id,t)}getWeather(){return e.__inject__.getWeather(this.id)}setTime(t,n){return e.__inject__.setTime(this.id,t,n)}getTime(){return e.__inject__.getTime(this.id)}removeBuilding(t,n,r,i,a){return e.__inject__.removeBuilding(this.id,t,n,r,i,a)}setTeam(t){t<0||t>c.NO_TEAM||e.__inject__.setTeam(this.id,t)}getTeam(){return e.__inject__.getTeam(this.id)}setSkillLevel(t,n){if(n<0||n>999)throw new qr(`The valid skill level is only 0 to 999`);return e.__inject__.setSkillLevel(this.id,t,n)}getName(){return e.__inject__.getName(this)}setName(t){return e.__inject__.setName(this,t)}setVelocity(t,n,r){return e.__inject__.setVelocity(this.id,t,n,r)}getVelocity(){return e.__inject__.getVelocity(this.id)}getSpeed(e=180){if(this.id===-1)return 0;let{x:t,y:n,z:r}=this.getVelocity();return Xi(t,n,r)*e}getKeys(){return e.__inject__.getKeys(this.id)}getIp(){return e.__inject__.getIp(this.id)}getFightingStyle(){return e.__inject__.getFightingStyle(this.id)}setFightingStyle(t){return e.__inject__.setFightingStyle(this.id,t)}setArmour(t){return e.__inject__.setArmour(this.id,t)}getArmour(){return e.__inject__.getArmour(this.id)}setCameraBehind(){return e.__inject__.setCameraBehind(this.id)}setCameraPos(t,n,r){return e.__inject__.setCameraPos(this.id,t,n,r)}setCameraLookAt(t,n,r,i=y.CUT){return e.__inject__.setCameraLookAt(this.id,t,n,r,i)}getCameraAspectRatio(){return e.__inject__.getCameraAspectRatio(this.id)}getCameraFrontVector(){return e.__inject__.getCameraFrontVector(this.id)}getCameraMode(){return e.__inject__.getCameraMode(this.id)}getCameraPos(){return e.__inject__.getCameraPos(this.id)}getCameraTargetPlayer(){let t=e.__inject__.getCameraTargetPlayer(this.id);return e.getInstance(t)}getCameraTargetVehicle(){let t=e.__inject__.getCameraTargetVehicle(this.id);return Gv.get(t)}getCameraTargetActor(){let t=e.__inject__.getCameraTargetActor(this.id);return cy.get(t)}getCameraTargetObject(){let t=e.__inject__.getCameraTargetObject(this.id);return sy.get(t)}getCameraTargetPlayerObject(){let t=e.__inject__.getCameraTargetPlayerObject(this.id);return U.get(this)?.get(t)}getCameraZoom(){return e.__inject__.getCameraZoom(this.id)}playAudioStream(t,n=0,r=0,i=0,a=5){let o=!1;return(n!==0||r!==0||i!==0)&&(o=!0),e.__inject__.playAudioStream(this.id,t,n,r,i,a,o)}stopAudioStream(){return e.__inject__.stopAudioStream(this.id)}playSound(t,n=0,r=0,i=0){return e.__inject__.playSound(this.id,t,n,r,i)}static getMaxPlayers(){return e.__inject__.getMaxPlayers()}playCrimeReport(t,n){if(n<3||n>22)throw new qr(`Available crime ids range from 3 to 22`);return e.__inject__.playCrimeReport(this.id,t.id,n)}interpolateCameraPos(t,n,r,i,a,o,s,c=y.CUT){return e.__inject__.interpolateCameraPos(this.id,t,n,r,i,a,o,s,c)}interpolateCameraLookAt(t,n,r,i,a,o,s,c=y.CUT){return e.__inject__.interpolateCameraLookAt(this.id,t,n,r,i,a,o,s,c)}createExplosion(t,n,r,i,a){if(i<0||i>13)throw new qr(`The valid explosion type value is only 0 to 13`);return e.__inject__.createExplosion(this.id,t,n,r,i,a)}static isConnected(t){return e.__inject__.isConnected(t)}isConnected(){return e.isConnected(this.id)}disableRemoteVehicleCollisions(t){return e.__inject__.disableRemoteVehicleCollisions(this.id,t)}getVehicle(){if(!this.isInAnyVehicle())return;let t=e.__inject__.getVehicleID(this.id);return J.getInstance(t)}getVehicleSeat(){return e.__inject__.getVehicleSeat(this.id)}getSurfingVehicle(){let t=e.__inject__.getSurfingVehicleID(this.id);return J.getInstance(t)}applyAnimation(t,n,r=4.1,i=!1,a=!0,o=!0,s=!1,c=0,l=!1){if(!lv(t,n))throw new qr(`Invalid anim library or name ${t} ${n}`);return e.__inject__.applyAnimation(this.id,t,n,r,i,a,o,s,c,+l)}clearAnimations(t=!1){return e.__inject__.clearAnimations(this.id,t)}getAnimationIndex(){return e.__inject__.getAnimationIndex(this.id)}getAnimationName(){return K.getAnimationName(this.getAnimationIndex())}setShopName(t){return e.__inject__.setShopName(this.id,t)}setPosFindZ(t,n,r){return e.__inject__.setPosFindZ(this.id,t,n,r)}setWorldBounds(t,n,r,i){return e.__inject__.setWorldBounds(this.id,t,n,r,i)}clearWorldBounds(){return e.__inject__.clearWorldBounds(this.id)}setChatBubble(t,n,r,i,a=this.charset){return e.__inject__.setChatBubble(this.id,t,n,r,i,a)}getDistanceFromPoint(t,n,r){return e.__inject__.getDistanceFromPoint(this.id,t,n,r)}getCustomSkin(){return e.__inject__.getCustomSkin(this.id)}getTargetPlayer(){let t=e.__inject__.getTargetPlayer(this.id);return e.getInstance(t)}getLastShotVectors(){return e.__inject__.getLastShotVectors(this.id)}getWeapon(){return e.__inject__.getWeapon(this.id)}getWeaponData(t){return e.__inject__.getWeaponData(this.id,t)}getWeaponState(){return e.__inject__.getWeaponState(this.id)}giveWeapon(t,n){return e.__inject__.giveWeapon(this.id,t,n)}setAmmo(t,n){return e.__inject__.setAmmo(this.id,t,n)}getAmmo(){return e.__inject__.getAmmo(this.id)}setArmedWeapon(t){return e.__inject__.setArmedWeapon(this.id,t)}clearDeathMessage(){for(let e=0;e<5;e++)this.sendDeathMessageToPlayer(c.PLAYER_ID,c.PLAYER_ID,ye.CONNECT)}sendDeathMessage(t,n){return e.__inject__.sendDeathMessage(t===c.PLAYER_ID?t:t.id,this.id,n)}sendDeathMessageToPlayer(t,n,r){return e.__inject__.sendDeathMessageToPlayer(this.id,t===c.PLAYER_ID?t:t.id,n===c.PLAYER_ID?n:n.id,r)}setSpawnInfo(t,n,r,i,a,o,s,l,u,d,f,p){return t<0||t>c.NO_TEAM||n<0||n>311||n===74||l<0||d<0||p<0?!1:e.__inject__.setSpawnInfo(this.id,t,n,r,i,a,o,s,l,u,d,f,p)}redirectDownload(t){return e.__inject__.redirectDownload(this.id,t)}sendClientCheck(t,n,r,i){let a=[2,5,69,70,71,72];if(!a.includes(t))throw new qr(`sendClientCheck valid types are ${a.toString()}`);return new Promise((a,o)=>{if(this.isPaused)return o(new Br(`An attempt to check player client response, but player paused game`));let s=this.getPing(),c=(s>=200?0:s)+200,l=null,u=Wy(({player:e,actionId:t,memAddr:n,data:r,next:i})=>e===this?(l&&=(clearTimeout(l),null),a({actionId:t,memAddr:n,data:r}),i()):i());l=setTimeout(()=>{u(),o(new Br(`An attempt to check player client response timed out`))},c),e.__inject__.sendClientCheck(this.id,t,n,r,i)})}selectTextDraw(t){e.__inject__.selectTextDraw(this.id,t)}cancelSelectTextDraw(){e.__inject__.cancelSelectTextDraw(this.id)}beginObjectSelecting(){return e.__inject__.beginObjectSelecting(this.id)}endObjectEditing(){return e.__inject__.endObjectEditing(this.id)}getSurfingObject(){let t=e.__inject__.getSurfingObjectID(this.id);if(t!==c.OBJECT_ID)return Y.getInstance(t)}getSurfingPlayerObject(){let t=e.__inject__.getSurfingPlayerObjectID(this.id);if(t!==c.OBJECT_ID)return Y.getInstance(t,this)}isAttachedObjectSlotUsed(t){return e.__inject__.isAttachedObjectSlotUsed(this.id,t)}editAttachedObject(t){return e.__inject__.editAttachedObject(this.id,t)}setAttachedObject(t,n,r,i=0,a=0,o=0,s=0,c=0,l=0,u=1,d=1,f=1,p=0,m=0){return this.isAttachedObjectSlotUsed(t)?0:e.__inject__.setAttachedObject(this.id,t,n,r,i,a,o,s,c,l,u,d,f,p,m)}removeAttachedObject(t){return this.isAttachedObjectSlotUsed(t)?e.__inject__.removeAttachedObject(this.id,t):!1}getAnimationFlags(){return e.__inject__.getAnimationFlags(this.id)}getLastSyncedTrailerID(){return e.__inject__.getLastSyncedTrailerID(this.id)}getLastSyncedVehicleID(){return e.__inject__.getLastSyncedVehicleID(this.id)}toggleWidescreen(t){return e.__inject__.toggleWidescreen(this.id,t)}isWidescreenToggled(){return e.__inject__.isWidescreenToggled(this.id)}getSpawnInfo(){return e.__inject__.getSpawnInfo(this.id)}getSkillLevel(t){return e.__inject__.getSkillLevel(this.id,t)}getWorldBounds(){return e.__inject__.getWorldBounds(this.id)}isInModShop(){return e.__inject__.isInModShop(this.id)}getSirenState(){return e.__inject__.getSirenState(this.id)}getLandingGearState(){return e.__inject__.getLandingGearState(this.id)}getHydraReactorAngle(){return e.__inject__.getHydraReactorAngle(this.id)}getTrainSpeed(){return e.__inject__.getTrainSpeed(this.id)}getZAim(){return e.__inject__.getZAim(this.id)}getSurfingOffsets(){return e.__inject__.getSurfingOffsets(this.id)}getRotationQuat(){return e.__inject__.getRotationQuat(this.id)}getDialogID(){return e.__inject__.getDialogID(this.id)}getSpectateID(){return e.__inject__.getSpectateID(this.id)}getSpectateType(){return e.__inject__.getSpectateType(this.id)}getRawIp(){return e.__inject__.getRawIp(this.id)}setGravity(t){return e.__inject__.setGravity(this.id,t)}getGravity(){return e.__inject__.getGravity(this.id)}setAdmin(t){return e.__inject__.setAdmin(this.id,t)}isSpawned(){return e.__inject__.isSpawned(this.id)}isControllable(){return e.__inject__.isControllable(this.id)}isCameraTargetEnabled(){return e.__inject__.isCameraTargetEnabled(this.id)}toggleGhostMode(t){return e.__inject__.toggleGhostMode(this.id,t)}getGhostMode(){return e.__inject__.getGhostMode(this.id)}getBuildingsRemoved(){return e.__inject__.getBuildingsRemoved(this.id)}getAttachedObject(t){return e.__inject__.getAttachedObject(this.id,t)}removeWeapon(t){return e.__inject__.removeWeapon(this.id,t)}isUsingOfficialClient(){return e.__inject__.isUsingOfficialClient(this.id)}allowWeapons(t){return e.__inject__.allowWeapons(this.id,t)}areWeaponsAllowed(){return e.__inject__.areWeaponsAllowed(this.id)}gpci(t=this.charset){return e.__inject__.gpci(this.id,t)}isCuffed(){return e.__inject__.isCuffed(this.id)}isInDriveByMode(){return e.__inject__.isInDriveByMode(this.id)}isAndroid(){return this.isConnected()&&this[B].isAndroid}isPC(){return this.isConnected()&&!this[B].isAndroid}isUsingOmp(){return e.__inject__.isUsingOmp(this.id)}simulateCommand(e){return Uy.simulate(this,e)}hasClockEnabled(){return e.__inject__.hasClockEnabled(this.id)}static getInstance(e){return Wv.get(e)}static getInstances(){return[...Wv.values()]}static __inject__={sendClientMessage:fv,sendClientMessageToAll:pv,sendMessageToPlayer:mv,sendMessageToAll:hv,banEx:yv,getName:_v,setName:vv,setChatBubble:Ov,isNpc:jo,getDrunkLevel:es,setDrunkLevel:ts,allowTeleport:Co,isTeleportAllowed:wo,enableCameraTarget:Sc,enableStuntBonus:Qs,getInterior:Vo,setInterior:Bo,showNameTag:pc,setColor:ns,getColor:rs,setMapIcon:mc,removeMapIcon:hc,setMarker:dc,getMarker:fc,resetMoney:ds,getMoney:fs,giveMoney:us,resetWeapons:ss,spawn:Oa,setHealth:Ho,getHealth:Uo,toggleClock:ys,toggleControllable:Hs,toggleSpectating:rc,spectatePlayer:ic,spectateVehicle:ac,forceClassSelection:xs,kick:Va,ban:Ha,isAdmin:za,isInRangeOfPoint:Lo,isStreamedIn:zo,setSkin:is,getSkin:as,isInAnyVehicle:cc,getSpecialAction:qs,setSpecialAction:Js,setScore:Qo,getScore:$o,getPing:ms,setPos:Mo,getPos:Po,getState:ps,getVersion:$a,setVirtualWorld:Xs,getVirtualWorld:Zs,removeFromVehicle:Vs,setWantedLevel:Ss,getWantedLevel:Cs,setFacingAngle:Fo,getFacingAngle:Io,setWeather:bs,getWeather:ro,setTime:_s,getTime:vs,removeBuilding:Is,setTeam:Xo,getTeam:Zo,setSkillLevel:Ms,setVelocity:Es,getVelocity:Ds,getKeys:gs,getIp:Qa,getFightingStyle:Ts,setFightingStyle:ws,setArmour:Wo,getArmour:Go,setCameraBehind:vc,setCameraPos:gc,setCameraLookAt:_c,getCameraAspectRatio:Dc,getCameraFrontVector:bc,getCameraMode:xc,getCameraPos:yc,getCameraTargetPlayer:Tc,getCameraTargetVehicle:wc,getCameraTargetActor:Ec,getCameraTargetObject:Cc,getCameraTargetPlayerObject:g_,getCameraZoom:Oc,playAudioStream:ks,stopAudioStream:As,playSound:Us,getMaxPlayers:Yi,playCrimeReport:Os,interpolateCameraPos:jc,interpolateCameraLookAt:Mc,createExplosion:ec,isConnected:oc,disableRemoteVehicleCollisions:Ys,getVehicleID:zs,getVehicleSeat:Bs,getSurfingVehicleID:Ns,applyAnimation:Ws,clearAnimations:Gs,getAnimationIndex:Ks,setShopName:js,setPosFindZ:No,setWorldBounds:lc,clearWorldBounds:uc,getDistanceFromPoint:Ro,getCustomSkin:$s,getTargetPlayer:Yo,getLastShotVectors:Ls,getWeapon:hs,getWeaponData:ls,getWeaponState:Jo,giveWeapon:os,setAmmo:Ko,getAmmo:qo,setArmedWeapon:cs,sendDeathMessage:Ji,sendDeathMessageToPlayer:ko,setSpawnInfo:Da,redirectDownload:qg,sendClientCheck:Ja,selectTextDraw:wh,cancelSelectTextDraw:Th,beginObjectSelecting:Bg,endObjectEditing:Vg,getSurfingObjectID:Ps,getSurfingPlayerObjectID:Fs,isAttachedObjectSlotUsed:e_,editAttachedObject:Eg,setAttachedObject:Qg,removeAttachedObject:$g,toggleWidescreen:eo,isWidescreenToggled:to,getSpawnInfo:ka,getSkillLevel:no,getWorldBounds:io,isInModShop:ep,getSirenState:tp,getLandingGearState:np,getHydraReactorAngle:rp,getTrainSpeed:ip,getZAim:ao,getSurfingOffsets:oo,getRotationQuat:so,getDialogID:co,getSpectateID:lo,getSpectateType:uo,getRawIp:Za,setGravity:fo,getGravity:po,setAdmin:Ba,isSpawned:mo,isControllable:ho,isCameraTargetEnabled:go,toggleGhostMode:_o,getGhostMode:vo,getBuildingsRemoved:yo,getAttachedObject:Zg,removeWeapon:bo,isUsingOfficialClient:So,allowWeapons:To,areWeaponsAllowed:Eo,gpci:qa,isCuffed:Nc,isInDriveByMode:Pc,isUsingOmp:Fc,hasClockEnabled:Ic,getAnimationFlags:r_,getLastSyncedTrailerID:i_,getLastSyncedVehicleID:a_}};const[Yy]=L({name:`OnDialogResponseI18n`,identifier:`iiiiai`,defaultValue:!1,beforeEach(e,t,n,r,i){let a=X.getInstance(e);return{player:a,dialogId:t,response:n,listItem:r,buffer:i,inputText:R.decodeFromBuf(i,a.charset)}}});Yy(({next:e,player:t,dialogId:n,response:r,listItem:i,buffer:a,inputText:o})=>{let s=Xy.waitingQueue.get(t);return!s||s.showId!==n||s.resolve({response:r,listItem:i,buffer:a,inputText:o}),e()});var Xy=class e{_id=-1;static showingIds=[];static maxDialogId=32767;dialog;static waitingQueue=new WeakMap;constructor(e={style:a.MSGBOX,caption:``,info:``,button1:``,button2:``}){this.dialog=e}get style(){return this.dialog.style}set style(e){this.dialog.style=e}get caption(){return this.dialog.caption}set caption(e){this.dialog.caption=e}get info(){return this.dialog.info}set info(e){this.dialog.info=e}get button1(){return this.dialog.button1}set button1(e){this.dialog.button1=e}get button2(){return this.dialog.button2}set button2(e){this.dialog.button2=e}static delDialogTask(t,n=!1){let r=e.waitingQueue.get(t);if(!r)return!1;n&&r.reject(new Hr(`player timeout does not respond or second request show dialog`)),e.waitingQueue.delete(t);let i=e.showingIds.indexOf(r.showId);return i>-1&&e.showingIds.splice(i,1),!0}show(t){return new Promise((n,r)=>{for(e.close(t);this._id===-1||e.showingIds.includes(this._id);){if(e.showingIds.length>=e.maxDialogId){this._id=-1;break}this._id=Math.floor(Math.random()*(e.maxDialogId+1))}if(this._id===-1){r(new Hr(`Cannot create dialog`));return}e.showingIds.push(this._id),e.waitingQueue.set(t,{resolve:n,reject:r,showId:this._id}),e.__inject__.show(t,this._id,this.dialog)}).catch(e=>Promise.reject(e)).finally(()=>e.delDialogTask(t))}static close(t){e.delDialogTask(t,!0),e.__inject__.hide(t.id)}static __inject__={show:gv,hide:xo}};const[Zy]=L({name:`OnPlayerConnect`,identifier:`i`,beforeEach(e){let t=new X(e);return Wv.set(e,t),Xy.close(t),{player:t}}}),[Qy]=L({name:`OnPlayerDisconnect`,identifier:`ii`,beforeEach(e,t){return{player:Wv.get(e),reason:t}},afterEach({player:e}){Wv.delete(e.id)}}),[$y]=L({name:`OnPlayerUpdate`,identifier:`i`,beforeEach(e){return{player:X.getInstance(e)}}}),[eb]=L({name:`OnPlayerTextI18n`,identifier:`iai`,beforeEach(e,t){let n=X.getInstance(e);return{player:n,text:R.decodeFromBuf(t,n.charset),buffer:t}}}),[tb]=L({name:`OnPlayerEnterExitModShop`,identifier:`iii`,beforeEach(e,t,n){return{player:X.getInstance(e),enterExit:t,interior:n}}}),[nb]=L({name:`OnPlayerClickMap`,identifier:`ifff`,defaultValue:!1,beforeEach(e,t,n,r){return{player:X.getInstance(e),fX:t,fY:n,fZ:r}}}),[rb]=L({name:`OnPlayerClickPlayer`,identifier:`iii`,defaultValue:!1,beforeEach(e,t,n){return{player:X.getInstance(e),clickedPlayer:X.getInstance(t),source:n}}}),[ib]=L({name:`OnPlayerDeath`,identifier:`iii`,beforeEach(e,t,n){let r=X.getInstance(t)||c.PLAYER_ID;return{player:X.getInstance(e),killer:r,reason:n}}}),[ab]=L({name:`OnPlayerGiveDamage`,identifier:`iiiii`,defaultValue:!1,beforeEach(e,t,n,r,i){return{player:X.getInstance(e),damage:X.getInstance(t),amount:n,weapon:r,bodyPart:i}}}),[ob]=L({name:`OnPlayerKeyStateChange`,identifier:`iii`,beforeEach(e,t,n){return{player:X.getInstance(e),newKeys:t,oldKeys:n}}}),[sb]=L({name:`OnPlayerRequestClass`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),classId:t}}}),[cb]=L({name:`OnPlayerRequestSpawn`,identifier:`i`,beforeEach(e){return{player:X.getInstance(e)}}}),[lb]=L({name:`OnPlayerSpawn`,identifier:`i`,beforeEach(e){return{player:X.getInstance(e)}}}),[ub]=L({name:`OnPlayerStateChange`,identifier:`iii`,beforeEach(e,t,n){return{player:X.getInstance(e),newState:t,oldState:n}}}),[db]=L({name:`OnPlayerStreamIn`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),forPlayer:X.getInstance(t)}}}),[fb]=L({name:`OnPlayerStreamOut`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),forPlayer:X.getInstance(t)}}}),[pb]=L({name:`OnPlayerTakeDamage`,identifier:`iiiii`,defaultValue:!1,beforeEach(e,t,n,r,i){let a=X.getInstance(t)||c.PLAYER_ID;return{player:X.getInstance(e),damage:a,amount:n,weapon:r,bodyPart:i}}}),[mb]=L({name:`OnPlayerInteriorChange`,identifier:`iii`,beforeEach(e,t,n){return{player:X.getInstance(e),newInteriorId:t,oldInteriorId:n}}}),[hb]=L({name:`OnPlayerRequestDownload`,identifier:`iii`,beforeEach(e,t,n){return{player:X.getInstance(e),type:t,crc:n}}}),[gb]=L({name:`OnPlayerFinishedDownloading`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),virtualWorld:t}}}),[_b]=L({name:`OnPlayerWeaponShot`,identifier:`iiiifff`,beforeEach(e,t,n,r,i,a,o){return{player:X.getInstance(e),weapon:t,hitType:n,hitId:r,fX:i,fY:a,fZ:o}}});let vb=null;const Z=new Map,yb=new Map;function bb(e){if(!e.isConnected()){Z.has(e)&&(clearInterval(Z.get(e)),Z.delete(e),yb.delete(e));return}let t=yb.get(e)||1;if(t>=X.MAX_CHECK_ANDROID_DELAY){clearInterval(Z.get(e)),Z.delete(e),yb.delete(e),Ob(e,!0);return}e.sendClientCheck(72,0,0,2).then(({actionId:t})=>{t===72&&(e[B].isAndroid=!1,Z.has(e)&&(clearInterval(Z.get(e)),Z.delete(e),yb.delete(e)),Ob(e,!1))}).catch(()=>{}),t++,yb.set(e,t)}const[xb,Sb]=L({name:`OnPlayerPause`,isNative:!1,beforeEach(e,t){return{player:e,pausedAt:t}}}),[Cb,wb]=L({name:`OnPlayerResume`,isNative:!1,beforeEach(e,t,n,r){return{player:e,pausedAt:t,now:n,diff:r}}}),[Tb,Eb]=L({name:`OnPlayerFpsUpdate`,isNative:!1,beforeEach(e,t,n){return{player:e,newFps:t,oldFps:n}}}),[Db,Ob]=L({name:`OnAndroidCheck`,isNative:!1,beforeEach(e,t){return{player:e,result:t}}});Zy(({player:e,next:t})=>{if(!vb&&X.getInstances().length&&(vb=setInterval(()=>{X.getInstances().filter(e=>{let t=e.getState()!==ae.NONE;return!e.isPaused&&!e.isNpc()&&t}).forEach(e=>{Date.now()-e.lastUpdateTick>1e3&&(e[B].isPaused=!0,Sb(e,e.lastUpdateTick))})},500)),e.isNpc())return e[B].isAndroid=!1,t();if(X.SKIP_CHECK_ANDROID)return e[B].isAndroid=!e.isUsingOfficialClient(),Ob(e,e[B].isAndroid),t();bb(e);let n=setInterval(()=>bb(e),1e3);return Z.set(e,n),t()}),Qy(({player:e,next:t})=>(vb&&X.getInstances().length<=1&&(clearInterval(vb),vb=null),Z.has(e)&&(clearInterval(Z.get(e)),Z.delete(e),yb.delete(e)),t()));function kb(e){if(!X.isConnected(e.id))return;let t=Date.now();if(t-e.lastUpdateFpsTick>=1e3){let n=e.getDrunkLevel();if(n<100){e.setDrunkLevel(2e3),e[B].lastDrunkLevel=2e3,e[B].lastFps=0;return}e[B].lastUpdateFpsTick=t;let r=e.lastFps,i=e.lastDrunkLevel-n-1;e[B].lastFps=i,e[B].lastDrunkLevel=n,Eb(e,i,r)}}$y(({player:e,next:t})=>{if(!e.isNpc()){let t=Date.now();e.isPaused&&(e[B].isPaused=!1,wb(e,e.lastUpdateTick,t,t-e.lastUpdateTick)),e[B].lastUpdateTick=t,kb(e)}return t()});const Ab=Object.freeze({onConnect:Zy,onDisconnect:Qy,onPause:xb,onResume:Cb,onUpdate:$y,onText:eb,onEnterExitModShop:tb,onClickMap:nb,onClickPlayer:rb,onDeath:ib,onGiveDamage:ab,onKeyStateChange:ob,onRequestClass:sb,onRequestSpawn:cb,onSpawn:lb,onStateChange:ub,onStreamIn:db,onStreamOut:fb,onTakeDamage:pb,onInteriorChange:mb,onRequestDownload:hb,onFinishedDownloading:gb,onCheckResponse:Wy,onCommandReceived:jy,onCommandPerformed:Ny,onCommandError:Fy,onCommandText:Uy.on,offCommandText:Uy.off,onDialogResponse:Yy,onLocaleChange:Gy,onCharsetChange:qy,onFpsUpdate:Tb,onWeaponShot:_b,onAndroidCheck:Db,onCommandTextRaw:zy});K.onExit(({next:e})=>(J.getInstances().forEach(e=>e.destroy()),Gv.clear(),e()));const[jb]=L({name:`OnVehicleDamageStatusUpdate`,identifier:`ii`,defaultValue:!1,beforeEach(e,t){return{vehicle:J.getInstance(e),player:X.getInstance(t)}}}),[Mb]=L({name:`OnVehicleDeath`,identifier:`ii`,beforeEach(e,t){return{vehicle:J.getInstance(e),killer:X.getInstance(t)}}}),[Nb]=L({name:`OnVehicleMod`,identifier:`iii`,beforeEach(e,t,n){return{player:X.getInstance(e),vehicle:J.getInstance(t),componentId:n}}}),[Pb]=L({name:`OnVehiclePaintjob`,identifier:`iii`,beforeEach(e,t,n){return{player:X.getInstance(e),vehicle:J.getInstance(t),paintjobId:n}}}),[Fb]=L({name:`OnVehicleRespray`,identifier:`iiii`,beforeEach(e,t,n,r){return{player:X.getInstance(e),vehicle:J.getInstance(t),color:[n,r]}}}),[Ib]=L({name:`OnVehicleSirenStateChange`,identifier:`iii`,defaultValue:!1,beforeEach(e,t,n){return{player:X.getInstance(e),vehicle:J.getInstance(t),state:!!n}}}),[Lb]=L({name:`OnVehicleSpawn`,identifier:`i`,beforeEach(e){return{vehicle:J.getInstance(e)}}}),[Rb]=L({name:`OnVehicleStreamIn`,identifier:`ii`,beforeEach(e,t){return{vehicle:J.getInstance(e),forPlayer:X.getInstance(t)}}}),[zb]=L({name:`OnVehicleStreamOut`,identifier:`ii`,beforeEach(e,t){return{vehicle:J.getInstance(e),forPlayer:X.getInstance(t)}}}),[Bb]=L({name:`OnPlayerEnterVehicle`,identifier:`iii`,beforeEach(e,t,n){return{player:X.getInstance(e),vehicle:J.getInstance(t),isPassenger:!!n}}}),[Vb]=L({name:`OnPlayerExitVehicle`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),vehicle:J.getInstance(t)}}}),[Hb]=L({name:`OnTrailerUpdate`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),vehicle:J.getInstance(t)}}}),[Ub]=L({name:`OnUnoccupiedVehicleUpdate`,identifier:`iiiffffff`,beforeEach(e,t,n,r,i,a,o,s,c){return{vehicle:J.getInstance(e),player:X.getInstance(t),passengerSeat:n,newX:r,newY:i,newZ:a,velX:o,velY:s,velZ:c}}}),Wb=Object.freeze({onDamageStatusUpdate:jb,onDeath:Mb,onMod:Nb,onPaintjob:Pb,onRespray:Fb,onSirenStateChange:Ib,onSpawn:Lb,onStreamIn:Rb,onStreamOut:zb,onPlayerEnter:Bb,onPlayerExit:Vb,onTrailerUpdate:Hb,onUnoccupiedUpdate:Ub}),[Gb]=L({name:`Streamer_OnItemStreamIn`,identifier:`iii`,beforeEach(e,t,n){return{type:e,id:t,forPlayer:X.getInstance(n)}}}),[Kb]=L({name:`Streamer_OnItemStreamOut`,identifier:`iii`,beforeEach(e,t,n){return{type:e,id:t,forPlayer:X.getInstance(n)}}}),[qb]=L({name:`Streamer_OnPluginError`,identifier:`s`,beforeEach(e){return{error:e}}});var Q=class{constructor(){throw new Xr(`This is a static class and cannot be instantiated.`)}static getTickRate=$n;static setTickRate=er;static getPlayerTickRate(e){return tr(e.id)}static setPlayerTickRate(e,t=50){return nr(e.id,t)}static toggleChunkStream=rr;static isToggleChunkStream=ir;static getChunkTickRate(e,t=-1){return t instanceof X?ar(e,t.id):ar(e,t)}static setChunkTickRate(e,t,n=-1){return n instanceof X?or(e,t,n.id):or(e,t,n)}static getChunkSize=sr;static setChunkSize=cr;static getMaxItems=lr;static setMaxItems=ur;static getVisibleItems(e,t=-1){return t instanceof X?dr(e,t.id):dr(e,t)}static setVisibleItems(e,t,n=-1){return n instanceof X?fr(e,t,n.id):fr(e,t,n)}static getRadiusMultiplier(e,t=-1){return t instanceof X?pr(e,t.id):pr(e,t)}static setRadiusMultiplier(e,t,n=-1){return n instanceof X?mr(e,t,n.id):mr(e,t,n)}static getTypePriority=hr;static setTypePriority=gr;static getCellDistance=_r;static setCellDistance=vr;static getCellSize=yr;static setCellSize=br;static toggleItemStatic=xr;static isToggleItemStatic=Sr;static toggleItemInvAreas=Cr;static isToggleItemInvAreas=wr;static toggleItemCallbacks=Tr;static isToggleItemCallbacks=Er;static toggleErrorCallback=Dr;static isToggleErrorCallback=Or;static amxUnloadDestroyItems=kr;static processActiveItems=Ar;static toggleIdleUpdate(e,t){return jr(e.id,t)}static isToggleIdleUpdate(e){return Mr(e.id)}static toggleCameraUpdate(e,t){return Nr(e.id,t)}static isToggleCameraUpdate(e){return Pr(e.id)}static toggleItemUpdate(e,t,n){return Fr(e.id,t,n)}static isToggleItemUpdate(e,t){return Ir(e.id,t)}static getLastUpdateTime(){return Lr()}static update(e,t=-1){return Rr(e.id,t)}static updateEx(e,t,n,r,i,a,o,s,c){return zr(e.id,t,n,r,i,a,o,s,c)}static getDistanceToItem=rn;static toggleItem(e,t,n,r){return an(e.id,t,n,r)}static isToggleItem(e,t,n){return on(e.id,t,n)}static toggleAllItems(e,t,n,r=[-1]){return sn(e.id,t,n,r)}static getItemInternalID(e,t,n){return cn(e.id,t,n)}static getItemStreamerID(e,t,n){return ln(e.id,t,n)}static isItemVisible(e,t,n){return un(e.id,t,n)}static destroyAllVisibleItems(e,t,n=1){return dn(e.id,t,n)}static countVisibleItems(e,t,n=1){return fn(e.id,t,n)}static destroyAllItems=pn;static countItems=mn;static getNearbyItems=hn;static getAllVisibleItems(e,t,n){return gn(e.id,t,n)}static getItemPos=_n;static setItemPos=vn;static getItemOffset=yn;static setItemOffset=bn;static getFloatData=At;static setFloatData=jt;static getIntData=Mt;static setIntData=Nt;static getArrayData=Pt;static setArrayData=Ft;static isInArrayData=It;static appendArrayData=Lt;static removeArrayData=Rt;static getArrayDataLength=zt;static getUpperBound=Bt;static onPluginError=qb},Jb=class e{sourceInfo=null;_id=C.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t==`number`){let n=e.getInstance(t);if(n)return n;this._id=t,$v.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==C.INVALID_ID)throw new P(`Cannot create again`);if(!this.sourceInfo)throw new P(`Cannot create with only id`);let{streamDistance:t,drawDistance:n,worldId:r,interiorId:i,playerId:a,areaId:o,priority:s}=this.sourceInfo,{modelId:c,x:l,y:u,z:d,rx:f,ry:p,rz:m,extended:h}=this.sourceInfo;return t??=x.OBJECT_SD,n??=x.OBJECT_DD,s??=0,h?(typeof r==`number`?r=[-1]:r??=[-1],typeof i==`number`?i=[-1]:i??=[-1],typeof a==`number`?a=[-1]:a??=[-1],typeof o==`number`?o=[-1]:o??=[-1],this._id=e.__inject__.createEx(c,l,u,d,f,p,m,t,n,r,i,a,o,s)):(Array.isArray(r)?r=-1:r??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(o)?o=-1:o??=-1,this._id=e.__inject__.create(c,l,u,d,f,p,m,r,i,a,t,n,o,s)),$v.set(this._id,this),this}destroy(){if(this.id===C.INVALID_ID&&!q.skip)throw new P(`Cannot destroy object before create`);return q.skip||e.__inject__.destroy(this.id),$v.delete(this.id),this._id=C.INVALID_ID,this}isValid(){return q.skip&&this.id!==C.INVALID_ID?!0:e.isValid(this.id)}getModel(){return this.sourceInfo?this.sourceInfo.modelId:Q.getIntData(S.OBJECT,this._id,Ce.MODEL_ID)}getPos(){if(this.id===C.INVALID_ID)throw new P(`Cannot get position before create`);return e.__inject__.getPos(this.id)}setPos(t,n,r){if(this.id===C.INVALID_ID)throw new P(`Cannot set position before create`);return e.__inject__.setPos(this.id,t,n,r)}getRot(){if(this.id===C.INVALID_ID)throw new P(`Cannot get rotation before create`);return e.__inject__.getRot(this.id)}setRot(t,n,r){if(this.id===C.INVALID_ID)throw new P(`Cannot set rotation before create`);return e.__inject__.setRot(this.id,t,n,r)}move(t,n,r,i,a=-1e3,o=-1e3,s=-1e3){if(this.id===C.INVALID_ID)throw new P(`Cannot start moving before create`);if(i<0)throw new P(`speed must not be less than 0`);if(i>120*1e3)throw new P(`speed more than 120 seconds, warn if it's not intentional`);return this.isMoving()&&this.stop(),e.__inject__.move(this.id,t,n,r,i,a,o,s)}stop(){if(this.id===C.INVALID_ID)throw new P(`Cannot stop moving before create`);return e.__inject__.stop(this.id)}isMoving(){return this.id===C.INVALID_ID?!1:e.__inject__.isMoving(this.id)}attachCamera(t){if(this.id===C.INVALID_ID||t.id===c.PLAYER_ID)throw new P(`Cannot attachCamera before both are created`);return e.__inject__.attachCamera(t.id,this.id)}attachToObject(t,n,r,i,a,o,s,c=!0){if(this.id===C.INVALID_ID||t.id===C.INVALID_ID)throw new P(`Cannot attachToObject before both are created`);return e.__inject__.attachToObject(this.id,t.id,n,r,i,a,o,s,c)}attachToPlayer(t,n,r,i,a,o,s){if(this.id===C.INVALID_ID||t.id===c.PLAYER_ID)throw new P(`Cannot attachToPlayer before both are created`);return e.__inject__.attachToPlayer(this.id,t.id,n,r,i,a,o,s)}attachToVehicle(t,n,r,i,a,o,s){if(this.id===C.INVALID_ID||t.id===c.VEHICLE_ID)throw new P(`Cannot attachToVehicle before both are created`);return e.__inject__.attachToVehicle(this.id,t.id,n,r,i,a,o,s)}edit(t){if(this.id===C.INVALID_ID)throw new P(`Cannot edit before create`);return t.endObjectEditing(),e.__inject__.edit(t.id,this.id)}isMaterialUsed(t){return this.id===C.INVALID_ID?!1:e.__inject__.isMaterialUsed(this.id,t)}removeMaterial(t){return this.id===C.INVALID_ID||!this.isMaterialUsed(t)?0:e.__inject__.removeMaterial(this.id,t)}getMaterial(t){if(this.id===C.INVALID_ID)throw new P(`Cannot get material before create`);return e.__inject__.getMaterial(this.id,t)}setMaterial(t,n,r,i,a=`#000`){if(this.id===C.INVALID_ID)throw new P(`Cannot set material before create`);return e.__inject__.setMaterial(this.id,t,n,r,i,z(a))}isMaterialTextUsed(t){return this.id===C.INVALID_ID?!1:e.__inject__.isMaterialTextUsed(this.id,t)}removeMaterialText(t){return this.id===C.INVALID_ID||!this.isMaterialTextUsed(t)?0:e.__inject__.removeMaterialText(this.id,t)}getMaterialText(t){if(this.id===C.INVALID_ID)throw new P(`Cannot get material text before create`);return e.__inject__.getMaterialText(this.id,t,this.sourceInfo?.charset||`utf8`)}setMaterialText(t=this.sourceInfo?.charset,n,r,i=Te.SIZE_256x128,a=`Arial`,o=24,s=1,c=`#fff`,l=`#000`,u=0){if(this.id===C.INVALID_ID)throw new P(`Cannot set material text before create`);return this.sourceInfo&&(this.sourceInfo.charset=t),e.__inject__.setMaterialText(t||`utf8`,this.id,n,r,i,a,o,s,z(c),z(l),u)}getPlayerCameraTarget(t){let n=e.__inject__.getPlayerCameraTarget(t.id);if(n!==C.INVALID_ID)return $v.get(n)}toggleCallbacks(e=!0){if(this.id===C.INVALID_ID)throw new P(`Cannot toggle callbacks before create`);return Q.toggleItemCallbacks(S.OBJECT,this.id,e)}isToggleCallbacks(){return this.id===C.INVALID_ID?!1:Q.isToggleItemCallbacks(S.OBJECT,this.id)}setNoCameraCollision(){return e.__inject__.setNoCameraCol(this.id)}getNoCameraCollision(){return e.__inject__.getNoCameraCol(this.id)}static isValid=Cn;static togglePlayerUpdate(e,t=!0){return Q.toggleItemUpdate(e,S.OBJECT,t)}static hideForPlayer(e,t=-5e4){return Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!1)}static showForPlayer(e,t=-5e4){let n=e.getPos();return n.ret?Q.updateEx(e,n.x,n.y,n.z):Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!0)}static getInstance(e){return $v.get(e)}static getInstances(){return[...$v.values()]}static __inject__={createEx:Gt,create:xn,destroy:Sn,getPos:wn,setPos:Tn,getRot:En,setRot:Dn,move:On,stop:kn,isMoving:An,attachCamera:jn,attachToObject:Mn,attachToPlayer:Nn,attachToVehicle:Pn,edit:Fn,isMaterialUsed:In,removeMaterial:Ln,getMaterial:Ev,setMaterial:Rn,isMaterialTextUsed:zn,removeMaterialText:Bn,getMaterialText:Dv,setMaterialText:Tv,getPlayerCameraTarget:Vn,setNoCameraCol:Hn,getNoCameraCol:Un}};K.onExit(({next:e})=>(Jb.getInstances().forEach(e=>e.destroy()),$v.clear(),e()));const[Yb,Xb]=L({name:`OnDynamicObjectStreamIn`,isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Zb,Qb]=L({name:`OnDynamicObjectStreamOut`,isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});Gb(({type:e,id:t,forPlayer:n,next:r})=>e===S.OBJECT?Xb(n,Jb.getInstance(t)):r()),Kb(({type:e,id:t,forPlayer:n,next:r})=>e===S.OBJECT?Qb(n,Jb.getInstance(t)):r());const[$b]=L({name:`OnDynamicObjectMoved`,identifier:`i`,beforeEach(e){return{object:Jb.getInstance(e)}}}),[ex]=L({name:`OnPlayerEditDynamicObject`,identifier:`iiiffffff`,defaultValue:!1,beforeEach(e,t,n,r,i,a,o,s,c){return{player:X.getInstance(e),object:Jb.getInstance(t),response:n,x:r,y:i,z:a,rX:o,rY:s,rZ:c}}}),[tx]=L({name:`OnPlayerSelectDynamicObject`,identifier:`iiifff`,beforeEach(e,t,n,r,i,a){return{player:X.getInstance(e),object:Jb.getInstance(t),modelId:n,x:r,y:i,z:a}}}),[nx]=L({name:`OnPlayerShootDynamicObject`,identifier:`iiifff`,beforeEach(e,t,n,r,i,a){return{player:X.getInstance(e),object:Jb.getInstance(n),weapon:t,x:r,y:i,z:a}}}),rx=Object.freeze({onMoved:$b,onPlayerEdit:ex,onPlayerSelect:tx,onPlayerShoot:nx,onStreamIn:Yb,onStreamOut:Zb});var ix=class e{sourceInfo=null;_id=C.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t==`number`){if(t===C.INVALID_ID)throw new Qr(`Invalid id`);let n=e.getInstance(t);if(n)return n;this._id=t,iy.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==C.INVALID_ID)throw new Qr(`Cannot create again`);if(!this.sourceInfo)throw new Qr(`Cannot create with only id`);let{style:t,streamDistance:n,worldId:r,interiorId:i,playerId:a,areaId:o,priority:s}=this.sourceInfo,{x:c,y:l,z:u,type:d,color:f,extended:p}=this.sourceInfo;if(d<0||d>63)throw new Qr(`Invalid map icon type`);return t??=Vt.LOCAL,n??=x.MAP_ICON_SD,s??=0,p?(typeof r==`number`?r=[-1]:r??=[-1],typeof i==`number`?i=[-1]:i??=[-1],typeof a==`number`?a=[-1]:a??=[-1],typeof o==`number`?o=[-1]:o??=[-1],this._id=e.__inject__.createEx(c,l,u,d,z(f),t,n,r,i,a,o,s),iy.set(this._id,this),this):(Array.isArray(r)?r=-1:r??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,Array.isArray(o)?o=-1:o??=-1,this._id=e.__inject__.create(c,l,u,d,z(f),r,i,a,n,t,o,s),iy.set(this._id,this),this)}destroy(){if(this.id===C.INVALID_ID&&!q.skip)throw new Qr(`Cannot destroy the map icon before create`);return q.skip||e.__inject__.destroy(this.id),iy.delete(this._id),this._id=C.INVALID_ID,this}isValid(){return q.skip&&this.id!==C.INVALID_ID?!0:e.isValid(this.id)}toggleCallbacks(e=!0){if(this.id===C.INVALID_ID)throw new Qr(`Cannot toggle callbacks before create`);return Q.toggleItemCallbacks(S.MAP_ICON,this.id,e)}isToggleCallbacks(){return this.id===C.INVALID_ID?!1:Q.isToggleItemCallbacks(S.MAP_ICON,this.id)}static isValid=Wt;static togglePlayerUpdate(e,t=!0){return Q.toggleItemUpdate(e,S.MAP_ICON,t)}static hideForPlayer(e,t=-5e4){return Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!1)}static showForPlayer(e,t=-5e4){let n=e.getPos();return n.ret?Q.updateEx(e,n.x,n.y,n.z):Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!0)}static getInstance(e){return iy.get(e)}static getInstances(){return[...iy.values()]}static __inject__={createEx:Yt,create:Ht,destroy:Ut}};K.onExit(({next:e})=>(ix.getInstances().forEach(e=>e.destroy()),iy.clear(),e()));const[ax,ox]=L({name:`OnDynamicMapIconStreamIn`,isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[sx,cx]=L({name:`OnDynamicMapIconStreamOut`,isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});Gb(({type:e,id:t,forPlayer:n,next:r})=>e===S.MAP_ICON?ox(n,ix.getInstance(t)):r()),Kb(({type:e,id:t,forPlayer:n,next:r})=>e===S.MAP_ICON?cx(n,ix.getInstance(t)):r());const lx=Object.freeze({onStreamIn:ax,onStreamOut:sx});var ux=class e{sourceInfo=null;_id=C.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t==`number`){if(t===C.INVALID_ID)throw new $r(`Invalid id`);let n=e.getInstance(t);if(n)return n;this._id=t,ay.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==C.INVALID_ID)throw new $r(`Cannot create again`);if(!this.sourceInfo)throw new $r(`Cannot create with only id`);let{streamDistance:t,worldId:n,interiorId:r,playerId:i,areaId:a,priority:o}=this.sourceInfo,{type:s,modelId:c,x:l,y:u,z:d,extended:f}=this.sourceInfo;if(s<0)throw new $r(`Invalid pickup type`);return t??=x.PICKUP_SD,o??=0,f?(typeof n==`number`?n=[-1]:n??=[-1],typeof r==`number`?r=[-1]:r??=[-1],typeof i==`number`?i=[-1]:i??=[-1],typeof a==`number`?a=[-1]:a??=[-1],this._id=e.__inject__.createEx(c,s,l,u,d,t,n,r,i,a,o)):(Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,this._id=e.__inject__.create(c,s,l,u,d,n,r,i,t,a,o)),ay.set(this._id,this),this}destroy(){if(this.id===C.INVALID_ID&&!q.skip)throw new $r(`Cannot destroy pickup before create`);return q.skip||e.__inject__.destroy(this.id),ay.delete(this.id),this._id=C.INVALID_ID,this}isValid(){return q.skip&&this.id!==C.INVALID_ID?!0:e.isValid(this.id)}toggleCallbacks(e=!0){if(this.id===C.INVALID_ID)throw new $r(`Cannot toggle callbacks before create`);return Q.toggleItemCallbacks(S.PICKUP,this.id,e)}isToggleCallbacks(){return this.id===C.INVALID_ID?!1:Q.isToggleItemCallbacks(S.PICKUP,this.id)}static isValid=Kn;static togglePlayerUpdate(e,t=!0){return Q.toggleItemUpdate(e,S.PICKUP,t)}static hideForPlayer(e,t=-5e4){return Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!1)}static showForPlayer(e,t=-5e4){let n=e.getPos();return n.ret?Q.updateEx(e,n.x,n.y,n.z):Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!0)}static getInstance(e){return ay.get(e)}static getInstances(){return[...ay.values()]}static __inject__={create:Wn,createEx:Kt,destroy:Gn}};K.onExit(({next:e})=>(ux.getInstances().forEach(e=>e.destroy()),ay.clear(),e()));const[dx,fx]=L({name:`OnDynamicPickupStreamIn`,isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[px,mx]=L({name:`OnDynamicPickupStreamOut`,isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});Gb(({type:e,id:t,next:n})=>e===S.PICKUP?fx(c.PLAYER_ID,ux.getInstance(t)):n()),Kb(({type:e,id:t,next:n})=>e===S.PICKUP?mx(c.PLAYER_ID,ux.getInstance(t)):n());const[hx]=L({name:`OnPlayerPickUpDynamicPickup`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),pickup:ux.getInstance(t)}}}),gx=Object.freeze({onPlayerPickUp:hx,onStreamIn:dx,onStreamOut:px});var _x=class e{sourceInfo=null;_id=C.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t==`number`){if(t===C.INVALID_ID)throw new Zr(`Invalid id`);let n=e.getInstance(t);if(n)return n;this._id=t,ry.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==C.INVALID_ID)throw new Zr(`Cannot create again`);if(!this.sourceInfo)throw new Zr(`Cannot create with only id`);let{streamDistance:t,worldId:n,interiorId:r,playerId:i,areaId:a,priority:o}=this.sourceInfo,{size:s,x:c,y:l,z:u,extended:d}=this.sourceInfo;if(s<0)throw new Zr(`Invalid checkpoint size`);return t??=x.CP_SD,o??=0,d?(typeof n==`number`?n=[-1]:n??=[-1],typeof r==`number`?r=[-1]:r??=[-1],typeof i==`number`?i=[-1]:i??=[-1],typeof a==`number`?a=[-1]:a??=[-1],this._id=e.__inject__.createEx(c,l,u,s,t,n,r,i,a,o)):(Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,this._id=e.__inject__.create(c,l,u,s,n,r,i,t,a,o)),ry.set(this._id,this),this}destroy(){if(this.id===C.INVALID_ID&&!q.skip)throw new Zr(`Cannot destroy the checkpoint before create`);return q.skip||e.__inject__.destroy(this.id),ry.delete(this.id),this._id=C.INVALID_ID,this}isValid(){return q.skip&&this.id!==C.INVALID_ID?!0:e.isValid(this.id)}togglePlayer(t,n){if(this.id===C.INVALID_ID)throw new Zr(`Cannot toggle the player before create`);return e.__inject__.togglePlayer(t.id,this.id,n),this}isPlayerIn(t){return this.id===C.INVALID_ID?!1:e.__inject__.isPlayerIn(t.id,this.id)}toggleCallbacks(e=!0){if(this.id===C.INVALID_ID)throw new Zr(`Cannot toggle callbacks before create`);return Q.toggleItemCallbacks(S.CP,this.id,e)}isToggleCallbacks(){return this.id===C.INVALID_ID?!1:Q.isToggleItemCallbacks(S.CP,this.id)}static isValid=Tt;static togglePlayerAll(t,n){return e.__inject__.togglePlayerAll(t.id,n)}static getPlayerVisible(t){return ry.get(e.__inject__.getPlayerVisible(t.id))}static togglePlayerUpdate(e,t=!0){return Q.toggleItemUpdate(e,S.CP,t)}static hideForPlayer(e,t=-5e4){return Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!1)}static showForPlayer(e,t=-5e4){let n=e.getPos();return n.ret?Q.updateEx(e,n.x,n.y,n.z):Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!0)}static getInstance(e){return ry.get(e)}static getInstances(){return[...ry.values()]}static __inject__={create:Ct,createEx:qt,destroy:wt,getPlayerVisible:kt,isPlayerIn:Ot,togglePlayerAll:Dt,togglePlayer:Et}};K.onExit(({next:e})=>(_x.getInstances().forEach(e=>e.destroy()),ry.clear(),e()));const[vx,yx]=L({name:`OnDynamicCheckPointStreamIn`,isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[bx,xx]=L({name:`OnDynamicCheckPointStreamOut`,isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});Gb(({type:e,id:t,forPlayer:n,next:r})=>e===S.CP?yx(n,_x.getInstance(t)):r()),Kb(({type:e,id:t,forPlayer:n,next:r})=>e===S.CP?xx(n,_x.getInstance(t)):r());const[Sx]=L({name:`OnPlayerEnterDynamicCP`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),cp:_x.getInstance(t)}}}),[Cx]=L({name:`OnPlayerLeaveDynamicCP`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),cp:_x.getInstance(t)}}}),wx=Object.freeze({onPlayerEnter:Sx,onPlayerLeave:Cx,onStreamIn:vx,onStreamOut:bx});var Tx=class e{sourceInfo=null;_id=C.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t==`number`){if(t===C.INVALID_ID)throw new ei(`Invalid id`);let n=e.getInstance(t);if(n)return n;this._id=t,oy.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==C.INVALID_ID)throw new ei(`Cannot create again`);if(!this.sourceInfo)throw new ei(`Cannot create with only id`);let{streamDistance:t,worldId:n,interiorId:r,playerId:i,areaId:a,priority:o}=this.sourceInfo,{type:s,size:c,x:l,y:u,z:d,nextX:f,nextY:p,nextZ:m,extended:h}=this.sourceInfo;if(s<0||s>8)throw new ei(`Invalid type`);if(c<0)throw new ei(`Invalid size`);return t??=x.RACE_CP_SD,o??=0,h?(typeof n==`number`?n=[-1]:n??=[-1],typeof r==`number`?r=[-1]:r??=[-1],typeof i==`number`?i=[-1]:i??=[-1],typeof a==`number`?a=[-1]:a??=[-1],this._id=e.__inject__.createEx(s,l,u,d,f,p,m,c,t,n,r,i,a,o)):(Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,this._id=e.__inject__.create(s,l,u,d,f,p,m,c,n,r,i,t,a,o)),oy.set(this._id,this),this}destroy(){if(this.id===C.INVALID_ID&&!q.skip)throw new ei(`Cannot destroy the checkpoint before create`);return q.skip||e.__inject__.destroy(this.id),oy.delete(this.id),this._id=C.INVALID_ID,this}isValid(){return q.skip&&this.id!==C.INVALID_ID?!0:e.isValid(this.id)}togglePlayer(t,n){if(this.id===C.INVALID_ID)throw new ei(`Cannot toggle player before create`);return e.__inject__.togglePlayer(t.id,this.id,n),this}static togglePlayerAll(t,n){return e.__inject__.togglePlayerAll(t.id,n)}isPlayerIn(t){return this.id===C.INVALID_ID?!1:e.__inject__.isPlayerIn(t.id,this.id)}static getPlayerVisible(t){return oy.get(e.__inject__.getPlayerVisible(t.id))}toggleCallbacks(e=!0){if(this.id===C.INVALID_ID)throw new ei(`Cannot toggle callbacks before create`);return Q.toggleItemCallbacks(S.RACE_CP,this.id,e)}isToggleCallbacks(){return this.id===C.INVALID_ID?!1:Q.isToggleItemCallbacks(S.RACE_CP,this.id)}static isValid=Tt;static togglePlayerUpdate(e,t=!0){return Q.toggleItemUpdate(e,S.RACE_CP,t)}static hideForPlayer(e,t=-5e4){return Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!1)}static showForPlayer(e,t=-5e4){let n=e.getPos();return n.ret?Q.updateEx(e,n.x,n.y,n.z):Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!0)}static getInstance(e){return oy.get(e)}static getInstances(){return[...oy.values()]}static __inject__={create:qn,createEx:Jt,destroy:Jn,getPlayerVisible:Qn,isPlayerIn:Zn,isValid:Tt,togglePlayerAll:Xn,togglePlayer:Yn}};K.onExit(({next:e})=>(Tx.getInstances().forEach(e=>e.destroy()),oy.clear(),e()));const[Ex,Dx]=L({name:`OnDynamicRaceCPStreamIn`,isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Ox,kx]=L({name:`OnDynamicRaceCPStreamOut`,isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});Gb(({type:e,id:t,forPlayer:n,next:r})=>e===S.RACE_CP?Dx(n,Tx.getInstance(t)):r()),Kb(({type:e,id:t,forPlayer:n,next:r})=>e===S.RACE_CP?kx(n,Tx.getInstance(t)):r());const[Ax]=L({name:`OnPlayerEnterDynamicRaceCP`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),raceCP:Tx.getInstance(t)}}}),[jx]=L({name:`OnPlayerLeaveDynamicRaceCP`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),raceCp:Tx.getInstance(t)}}}),Mx=Object.freeze({onPlayerEnter:Ax,onPlayerLeave:jx,onStreamIn:Ex,onStreamOut:Ox});var Nx=class e{sourceInfo=null;_id=C.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t==`number`){if(t===C.INVALID_ID)throw new M(`Invalid id`);let n=e.getInstance(t);if(n)return n;this._id=t,ty.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==C.INVALID_ID)throw new M(`Cannot create again`);if(!this.sourceInfo)throw new M(`Cannot create with only id`);let{streamDistance:t,worldId:n,interiorId:r,playerId:i,areaId:a,priority:o}=this.sourceInfo,{modelId:s,x:c,y:l,z:u,r:d,invulnerable:f,health:p,extended:m}=this.sourceInfo;return t??=x.ACTOR_SD,o??=0,m?(typeof n==`number`?n=[0]:n??=[0],typeof r==`number`?r=[-1]:r??=[-1],typeof i==`number`?i=[-1]:i??=[-1],typeof a==`number`?a=[-1]:a??=[-1],this._id=e.__inject__.createEx(s,c,l,u,d,f,p,t,n,r,i,a,o)):(Array.isArray(n)?n=0:n??=0,Array.isArray(r)?r=-1:r??=-1,Array.isArray(i)?i=-1:i??=-1,Array.isArray(a)?a=-1:a??=-1,this._id=e.__inject__.create(s,c,l,u,d,f,p,n,r,i,t,a,o)),ty.set(this.id,this),this}destroy(){if(this.id===C.INVALID_ID&&!q.skip)throw new M(`Cannot destroy to actor before create`);return q.skip||e.__inject__.destroy(this.id),ty.delete(this.id),this._id=C.INVALID_ID,this}isValid(){return q.skip&&this.id!==C.INVALID_ID?!0:e.isValid(this.id)}isStreamedIn(t){return this.id===C.INVALID_ID?!1:e.__inject__.isStreamedIn(this.id,t.id)}getVirtualWorld(){if(this.id===C.INVALID_ID)throw new M(`Cannot get virtual world before create`);return e.__inject__.getVirtualWorld(this.id)}setVirtualWorld(t){if(this.id===C.INVALID_ID)throw new M(`Cannot set virtual world before create`);return e.__inject__.setVirtualWorld(this.id,t)}applyAnimation(t,n,r=4.1,i=!1,a=!0,o=!0,s=!1,c=0){if(this.id===C.INVALID_ID)throw new M(`Cannot apply animation before create`);if(!lv(t,n))throw new M(`Invalid anim library or name ${t} ${n}`);return e.__inject__.applyAnimation(this.id,t,n,r,i,a,o,s,c)}clearAnimations(){if(this.id===C.INVALID_ID)throw new M(`Cannot clear animation before create`);return e.__inject__.clearAnimations(this.id)}getFacingAngle(){return e.__inject__.getFacingAngle(this.id)}setFacingAngle(t){if(this.id===C.INVALID_ID)throw new M(`Cannot set facing angle before create`);return e.__inject__.setFacingAngle(this.id,t)}getPos(){if(this.id===C.INVALID_ID)throw new M(`Cannot get pos before create`);return e.__inject__.getPos(this.id)}setPos(t,n,r){if(this.id===C.INVALID_ID)throw new M(`Cannot set pos before create`);return e.__inject__.setPos(this.id,t,n,r)}getHealth(){return e.__inject__.getHealth(this.id)}setHealth(t){if(this.id===C.INVALID_ID)throw new M(`Cannot set health before create`);return e.__inject__.setHealth(this.id,t)}isInvulnerable(){return this.id===C.INVALID_ID?!1:e.__inject__.isInvulnerable(this.id)}setInvulnerable(t=!0){if(this.id===C.INVALID_ID)throw new M(`Cannot set invulnerable before create`);return e.__inject__.setInvulnerable(this.id,t)}getPlayerTarget(t){let n=e.__inject__.getPlayerTarget(t.id);return ty.get(n)}getPlayerCameraTarget(t){let n=e.__inject__.getPlayerCameraTarget(t.id);return ty.get(n)}getAnimation(){if(this.id===C.INVALID_ID)throw new M(`Cannot get animation before create`);return e.__inject__.getAnimation(this.id)}toggleCallbacks(e=!0){if(this.id===C.INVALID_ID)throw new M(`Cannot toggle callbacks before create`);return Q.toggleItemCallbacks(S.ACTOR,this.id,e)}isToggleCallbacks(){return this.id===C.INVALID_ID?!1:Q.isToggleItemCallbacks(S.ACTOR,this.id)}static isValid=Ae;static togglePlayerUpdate(e,t=!0){return Q.toggleItemUpdate(e,S.ACTOR,t)}static hideForPlayer(e,t=-5e4){return Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!1)}static showForPlayer(e,t=-5e4){let n=e.getPos();return n.ret?Q.updateEx(e,n.x,n.y,n.z):Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!0)}static getInstance(e){return ty.get(e)}static getInstances(){return[...ty.values()]}static __inject__={createEx:nn,create:Oe,destroy:ke,getPlayerTarget:We,getPlayerCameraTarget:Ge,isStreamedIn:je,getVirtualWorld:Me,setVirtualWorld:Ne,applyAnimation:Pe,clearAnimations:Fe,getFacingAngle:Ie,setFacingAngle:Le,getPos:Re,setPos:ze,getHealth:Be,setHealth:Ve,isInvulnerable:Ue,setInvulnerable:He,getAnimation:Ke}};K.onExit(({next:e})=>(Nx.getInstances().forEach(e=>e.destroy()),ty.clear(),e()));const[Px]=L({name:`OnDynamicActorStreamIn`,identifier:`ii`,beforeEach(e,t){return{actor:Nx.getInstance(e),forPlayer:X.getInstance(t)}}}),[Fx]=L({name:`OnDynamicActorStreamOut`,identifier:`ii`,beforeEach(e,t){return{actor:Nx.getInstance(e),forPlayer:X.getInstance(t)}}}),[Ix]=L({name:`OnPlayerGiveDamageDynamicActor`,identifier:`iiiii`,defaultValue:!1,beforeEach(e,t,n,r,i){return{player:X.getInstance(e),actor:Nx.getInstance(t),amount:n,weapon:r,bodyPart:i}}}),Lx=Object.freeze({onStreamIn:Px,onStreamOut:Fx,onPlayerGiveDamage:Ix});var Rx=class e{sourceInfo=null;_id=C.INVALID_ID;get id(){return this._id}constructor(t){if(typeof t==`number`){if(t===C.INVALID_ID)throw new F(`Invalid id`);let n=e.getInstance(t);if(n)return n;this._id=t,ey.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==C.INVALID_ID)throw new F(`Cannot create again`);if(!this.sourceInfo)throw new F(`Cannot create with only id`);let{attachedPlayer:t,attachedVehicle:n,testLOS:r,streamDistance:i,worldId:a,interiorId:o,playerId:s,areaId:l,priority:u}=this.sourceInfo,{charset:d,text:f,color:p,drawDistance:m,x:h,y:g,z:ee,extended:te}=this.sourceInfo;return t??=c.PLAYER_ID,n??=c.VEHICLE_ID,i??=x.TEXT_3D_LABEL_SD,r??=!1,u??=0,te?(typeof a==`number`?a=[-1]:a??=[-1],typeof o==`number`?o=[-1]:o??=[-1],typeof s==`number`?s=[-1]:s??=[-1],typeof l==`number`?l=[-1]:l??=[-1],this._id=e.__inject__.createEx(f,z(p),h,g,ee,m,t,n,r,i,a,o,s,l,u,d||`utf8`)):(Array.isArray(a)?a=-1:a??=-1,Array.isArray(o)?o=-1:o??=-1,Array.isArray(s)?s=-1:s??=-1,Array.isArray(l)?l=-1:l??=-1,this._id=e.__inject__.create(d||`utf8`,f,z(p),h,g,ee,m,t,n,r,a,o,s,i,l,u)),ey.set(this.id,this),this}destroy(){if(this.id===C.INVALID_ID&&!q.skip)throw new F(`Cannot destroy before create`);return q.skip||e.__inject__.destroy(this.id),ey.delete(this.id),this._id=C.INVALID_ID,this}isValid(){return q.skip&&this.id!==C.INVALID_ID?!0:e.isValid(this.id)}getColor(){if(this.id===C.INVALID_ID)throw new F(`Cannot get color before create`);return this.sourceInfo?this.sourceInfo.color:Q.getIntData(S.TEXT_3D_LABEL,this._id,Ce.COLOR)}getCharset(){if(this.id===C.INVALID_ID)throw new F(`Cannot get charset before create`);return this.sourceInfo?.charset}getText(){return e.__inject__.getText(this.id,this.sourceInfo?.charset||`utf8`)}updateText(t,n,r){if(this.id===C.INVALID_ID)throw new F(`Cannot update text before create`);let i=``;return this.sourceInfo&&(i=r||this.sourceInfo.charset||`utf8`,this.sourceInfo.charset=i),e.__inject__.updateText(this.id,z(t),n,i)}toggleCallbacks(e=!0){if(this.id===C.INVALID_ID)throw new F(`Cannot toggle callbacks before create`);return Q.toggleItemCallbacks(S.TEXT_3D_LABEL,this.id,e)}isToggleCallbacks(){return this.id===C.INVALID_ID?!1:Q.isToggleItemCallbacks(S.TEXT_3D_LABEL,this.id)}setOffsets(e,t,n){if(this.id===C.INVALID_ID)return 0;let r=Q.setFloatData(S.TEXT_3D_LABEL,this.id,Ce.ATTACH_OFFSET_X,e);return Q.setFloatData(S.TEXT_3D_LABEL,this.id,Ce.ATTACH_OFFSET_Y,t),Q.setFloatData(S.TEXT_3D_LABEL,this.id,Ce.ATTACH_OFFSET_Z,n),this.sourceInfo&&(this.sourceInfo.x=e,this.sourceInfo.y=t,this.sourceInfo.z=n),r}attachToPlayer(e,t,n,r){if(this.id===C.INVALID_ID)throw new F(`Cannot attachToPlayer before created`);let i=typeof e==`number`?e:e.id,a=Q.setIntData(S.TEXT_3D_LABEL,this.id,Ce.ATTACHED_PLAYER,i);return i!==c.PLAYER_ID&&this.setOffsets(t,n,r),this.sourceInfo&&(this.sourceInfo.attachedPlayer=i),a}attachToVehicle(e,t,n,r){if(this.id===C.INVALID_ID)throw new F(`Cannot attachToVehicle before created`);let i=typeof e==`number`?e:e.id,a=Q.setIntData(S.TEXT_3D_LABEL,this.id,Ce.ATTACHED_VEHICLE,i);return i!==c.VEHICLE_ID&&this.setOffsets(t,n,r),this.sourceInfo&&(this.sourceInfo.attachedVehicle=i),a}static isValid=De;static togglePlayerUpdate(e,t=!0){return Q.toggleItemUpdate(e,S.TEXT_3D_LABEL,t)}static hideForPlayer(e,t=-5e4){return Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!1)}static showForPlayer(e,t=-5e4){let n=e.getPos();return n.ret?Q.updateEx(e,n.x,n.y,n.z):Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!0)}static getInstance(e){return ey.get(e)}static getInstances(){return[...ey.values()]}static __inject__={create:xv,createEx:Sv,getText:wv,updateText:Cv,destroy:Ee,isValid:De}};K.onExit(({next:e})=>(Rx.getInstances().forEach(e=>e.destroy()),ey.clear(),e()));const[zx,Bx]=L({name:`OnDynamic3dTextStreamIn`,isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[Vx,Hx]=L({name:`OnDynamic3dTextStreamOut`,isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});Gb(({type:e,id:t,forPlayer:n,next:r})=>e===S.TEXT_3D_LABEL?Bx(n,Rx.getInstance(t)):r()),Kb(({type:e,id:t,forPlayer:n,next:r})=>e===S.TEXT_3D_LABEL?Hx(n,Rx.getInstance(t)):r());const Ux=Object.freeze({onStreamIn:zx,onStreamOut:Vx});var Wx=class e{sourceInfo=null;_id=C.INVALID_ID;get type(){return this.sourceInfo?.type??void 0}get id(){return this._id}constructor(t){if(typeof t==`number`){if(t===C.INVALID_ID)throw new N(`Invalid id`);let n=e.getInstance(t);if(n)return n;this._id=t,ny.set(this._id,this)}else this.sourceInfo=t}create(){if(this.id!==C.INVALID_ID)throw new N(`Cannot create again`);if(!this.sourceInfo)throw new N(`Cannot create with only id`);let{worldId:t,interiorId:n,playerId:r,priority:i}=this.sourceInfo;i??=0;let{type:a,extended:o}=this.sourceInfo;if(o)if(typeof t==`number`?t=[-1]:t??=[-1],typeof n==`number`?n=[-1]:n??=[-1],typeof r==`number`?r=[-1]:r??=[-1],a===`circle`){let{x:a,y:o,size:s}=this.sourceInfo;if(s<0)throw new N(`Invalid circle extend size`);this._id=e.__inject__.createCircleEx(a,o,s,t,n,r,i)}else if(a===`cuboid`){let{minX:a,minY:o,minZ:s,maxX:c,maxY:l,maxZ:u}=this.sourceInfo;this._id=e.__inject__.createCuboidEx(a,o,s,c,l,u,t,n,r,i)}else if(a===`cylinder`){let{x:a,y:o,minZ:s,maxZ:c,size:l}=this.sourceInfo;if(l<0)throw new N(`Invalid cylinder extend size`);this._id=e.__inject__.createCylinderEx(a,o,s,c,l,t,n,r,i)}else if(a===`polygon`){let{points:a,minZ:o,maxZ:s}=this.sourceInfo;if(a.length%2!=0)throw new N(`Cannot create polygon extended with asymmetrical points`);this._id=e.__inject__.createPolygonEx(a,o,s,t,n,r,i)}else if(a===`rectangle`){let{minX:a,minY:o,maxX:s,maxY:c}=this.sourceInfo;this._id=e.__inject__.createRectangleEx(a,o,s,c,t,n,r,i)}else{let{x:a,y:o,z:s,size:c}=this.sourceInfo;if(c<0)throw new N(`Invalid sphere extended size`);this._id=e.__inject__.createSphereEx(a,o,s,c,t,n,r,i)}else if(Array.isArray(t)?t=-1:t??=-1,Array.isArray(n)?n=-1:n??=-1,Array.isArray(r)?r=-1:r??=-1,a===`circle`){let{x:a,y:o,size:s}=this.sourceInfo;if(s<0)throw new N(`Invalid circle size`);this._id=e.__inject__.createCircle(a,o,s,t,n,r,i)}else if(a===`cuboid`){let{minX:a,minY:o,minZ:s,maxX:c,maxY:l,maxZ:u}=this.sourceInfo;this._id=e.__inject__.createCuboid(a,o,s,c,l,u,t,n,r,i)}else if(a===`cylinder`){let{x:a,y:o,minZ:s,maxZ:c,size:l}=this.sourceInfo;if(l<0)throw new N(`Invalid cylinder size`);this._id=e.__inject__.createCylinder(a,o,s,c,l,t,n,r,i)}else if(a===`polygon`){let{points:a,minZ:o,maxZ:s}=this.sourceInfo;if(a.length%2!=0)throw new N(`Cannot create polygon with asymmetrical points`);this._id=e.__inject__.createPolygon(a,o,s,t,n,r,i)}else if(a===`rectangle`){let{minX:a,minY:o,maxX:s,maxY:c}=this.sourceInfo;this._id=e.__inject__.createRectangle(a,o,s,c,t,n,r,i)}else{let{x:a,y:o,z:s,size:c}=this.sourceInfo;if(c<0)throw new N(`Invalid sphere size`);this._id=e.__inject__.createSphere(a,o,s,c,t,n,r,i)}return ny.set(this._id,this),this}destroy(){if(this.id===C.INVALID_ID&&!q.skip)throw new N(`Cannot destroy the area before create`);return q.skip||e.__inject__.destroy(this.id),ny.delete(this.id),this._id=C.INVALID_ID,this}isValid(){return q.skip&&this.id!==C.INVALID_ID?!0:e.isValid(this.id)}getType(){if(this.id!==C.INVALID_ID)throw new N(`Cannot get type before create`);return e.__inject__.getType(this.id)}getPolygonPoints(){return e.__inject__.getPolygonPoints(this.id)}getPolygonNumberPoints(){if(this.id!==C.INVALID_ID)throw new N(`Cannot getPolygonNumberPoints number before create`);if(this.type!==`polygon`)throw new N(`getPolygonNumberPoints invalid area type`);return e.__inject__.getPolygonNumberPoints(this.id)}isPlayerIn(t,n=!1){return this.id===C.INVALID_ID?!1:e.__inject__.isPlayerIn(t.id,this.id,n)}static isPlayerInAny(t,n=!1){return e.__inject__.isPlayerInAny(t.id,n)}isAnyPlayerIn(t=!1){return this.id===C.INVALID_ID?!1:e.__inject__.isAnyPlayerIn(this.id,t)}static isAnyPlayerInAny(t=!1){return e.__inject__.isAnyPlayerInAny(t)}static getPlayerAreas(t){return e.getPlayerAreasNumber(t)?e.__inject__.getPlayerAreas(t.id).areas.map(e=>ny.get(e)):[]}static getPlayerAreasNumber(t){return e.__inject__.getPlayerAreasNumber(t.id)}isPointIn(t,n,r){return this.id===C.INVALID_ID?!1:e.__inject__.isPointIn(this.id,t,n,r)}static isPointInAny(t,n,r){return e.__inject__.isPointInAny(t,n,r)}isLineIn(t,n,r,i,a,o){return this.id===C.INVALID_ID?!1:e.__inject__.isLineIn(this.id,t,n,r,i,a,o)}static isLineInAny(t,n,r,i,a,o){return e.__inject__.isLineInAny(t,n,r,i,a,o)}static getForPoint(t,n,r){return e.getNumberForPoint(t,n,r)?e.__inject__.getForPoint(t,n,r).areas.map(t=>e.getInstance(t)).filter(Boolean):[]}static getNumberForPoint(t,n,r){return e.__inject__.getNumberForPoint(t,n,r)}static getForLine(t,n,r,i,a,o){return e.getNumberForLine(t,n,r,i,a,o)?e.__inject__.getForLine(t,n,r,i,a,o).areas.map(t=>e.getInstance(t)).filter(Boolean):[]}static getNumberForLine(t,n,r,i,a,o){return e.__inject__.getNumberForLine(t,n,r,i,a,o)}attachToObject(t,n=0,r=0,i=0){if(this.id===C.INVALID_ID||t.id===C.INVALID_ID)throw new N(`Cannot toggle attach to object before create`);return e.__inject__.attachToObject(this.id,t.id,Se.DYNAMIC,c.PLAYER_ID,n,r,i)}attachToPlayer(t,n=0,r=0,i=0){if(this.id===C.INVALID_ID||t.id===c.PLAYER_ID)throw new N(`Cannot toggle attach to player before create`);return e.__inject__.attachToPlayer(this.id,t.id,n,r,i)}attachToVehicle(t,n=0,r=0,i=0){if(this.id===C.INVALID_ID||t.id===c.VEHICLE_ID)throw new N(`Cannot toggle attach to vehicle before create`);return e.__inject__.attachToVehicle(this.id,t.id,n,r,i)}toggleSpectateMode(t){if(this.id===C.INVALID_ID)throw new N(`Cannot toggle spectate mode before create`);return e.__inject__.toggleSpectateMode(this.id,t)}isToggleSpectateMode(){return this.id===C.INVALID_ID?!1:e.__inject__.isToggleSpectateMode(this.id)}toggleCallbacks(e=!0){if(this.id===C.INVALID_ID)throw new N(`Cannot toggle callbacks before create`);return Q.toggleItemCallbacks(S.AREA,this.id,e)}isToggleCallbacks(){return this.id===C.INVALID_ID?!1:Q.isToggleItemCallbacks(S.AREA,this.id)}static isValid=et;static togglePlayerUpdate(e,t=!0){return Q.toggleItemUpdate(e,S.AREA,t)}static hideForPlayer(e,t=-5e4){return Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!1)}static showForPlayer(e,t=-5e4){let n=e.getPos();return n.ret?Q.updateEx(e,n.x,n.y,n.z):Q.updateEx(e,0,0,t),this.togglePlayerUpdate(e,!0)}static getInstance(e){return ny.get(e)}static getInstances(){return[...ny.values()]}static __inject__={createCircleEx:Xt,createCuboidEx:en,createCylinderEx:Zt,createPolygonEx:tn,createRectangleEx:$t,createSphereEx:Qt,createCircle:qe,createCuboid:Ze,createCylinder:Je,createPolygon:Qe,createRectangle:Xe,createSphere:Ye,destroy:$e,getType:tt,getPolygonPoints:nt,getPolygonNumberPoints:rt,isPlayerIn:it,isPlayerInAny:at,isAnyPlayerIn:ot,isAnyPlayerInAny:st,getPlayerAreas:ct,getPlayerAreasNumber:lt,isPointIn:ut,isPointInAny:dt,isLineIn:ft,isLineInAny:pt,getForPoint:mt,getNumberForPoint:ht,getForLine:gt,getNumberForLine:_t,attachToObject:vt,attachToPlayer:yt,attachToVehicle:bt,toggleSpectateMode:xt,isToggleSpectateMode:St}};K.onExit(({next:e})=>(Wx.getInstances().forEach(e=>e.destroy()),ny.clear(),e()));const[Gx,Kx]=L({name:`OnDynamicAreaStreamIn`,isNative:!1,beforeEach(e,t){return{player:e,instance:t}}}),[qx,Jx]=L({name:`OnDynamicAreaStreamOut`,isNative:!1,beforeEach(e,t){return{player:e,instance:t}}});Gb(({type:e,id:t,forPlayer:n,next:r})=>e===S.AREA?Kx(n,Wx.getInstance(t)):r()),Kb(({type:e,id:t,forPlayer:n,next:r})=>e===S.AREA?Jx(n,Wx.getInstance(t)):r());const[Yx]=L({name:`OnPlayerEnterDynamicArea`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),area:Wx.getInstance(t)}}}),[Xx]=L({name:`OnPlayerLeaveDynamicArea`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),area:Wx.getInstance(t)}}}),Zx=Object.freeze({onStreamIn:Gx,onStreamOut:qx,onPlayerEnter:Yx,onPlayerLeave:Xx});var $=class e{_id=c.NPC_ID;_name=``;get id(){return this._id}constructor(t){if(typeof t==`string`&&(this._name=t),typeof t==`number`){if(t===c.NPC_ID)throw new O(`Invalid id`);this._id=t;let n=e.getInstance(this._id);if(n)return n;Jv.set(this._id,this)}return this}create(){if(this.id!==c.NPC_ID)throw new O(`Cannot create again`);return this._id=e.__inject__.create(this._name),this._id!==c.NPC_ID&&(this.getPlayer()||new X(this._id),Jv.set(this._id,this)),this}destroy(){if(this.id===c.NPC_ID)throw new O(`Cannot destroy before create`);return q.skip||e.__inject__.destroy(this._id),Jv.delete(this._id),this._id=c.NPC_ID,this}getPlayer(){if(this.id===c.NPC_ID)throw new O(`Cannot getPlayer before create`);return X.getInstance(this._id)}getName(){if(this._id===c.NPC_ID)throw new O(`Cannot getName before create`);return this._name?this._name:this.getPlayer().getName().name}isValid(){return this.id===c.NPC_ID?!1:q.skip&&this._id!==c.NPC_ID?!0:e.isValid(this._id)}spawn(){if(this.id===c.NPC_ID)throw new O(`Cannot spawn before create`);return e.__inject__.spawn(this._id),this}respawn(){if(this.id===c.NPC_ID)throw new O(`Cannot respawn before create`);return e.__inject__.respawn(this._id),this}setPos(t,n,r){if(this.id===c.NPC_ID)throw new O(`Cannot setPos before create`);return e.__inject__.setPos(this._id,t,n,r),this}setRot(t,n,r){if(this.id===c.NPC_ID)throw new O(`Cannot setRot before create`);return e.__inject__.setRot(this._id,t,n,r),this}getRot(){if(this.id===c.NPC_ID)throw new O(`Cannot getRot before create`);return e.__inject__.getRot(this._id)}setFacingAngle(t){if(this.id===c.NPC_ID)throw new O(`Cannot setFacingAngle before create`);return e.__inject__.setFacingAngle(this._id,t),this}getFacingAngle(){if(this.id===c.NPC_ID)throw new O(`Cannot getFacingAngle before create`);return e.__inject__.getFacingAngle(this._id)}setVirtualWorld(t){if(this.id===c.NPC_ID)throw new O(`Cannot setVirtualWorld before create`);return e.__inject__.setVirtualWorld(this._id,t),this}getVirtualWorld(){if(this.id===c.NPC_ID)throw new O(`Cannot getVirtualWorld before create`);return e.__inject__.getVirtualWorld(this._id)}move(t,n,r,i=m.AUTO,a=g.AUTO){if(this.id===c.NPC_ID)throw new O(`Cannot move before create`);return e.__inject__.move(this._id,t,n,r,i,a)}moveToPlayer(t,n=m.AUTO,r=g.AUTO){if(this.id===c.NPC_ID)throw new O(`Cannot moveToPlayer before create`);return e.__inject__.moveToPlayer(this._id,t.id,n,r)}stopMove(){if(this.id===c.NPC_ID)throw new O(`Cannot stopMove before create`);return e.__inject__.stopMove(this._id),this}isMoving(){return this.id===c.NPC_ID?!1:e.__inject__.isMoving(this._id)}isMovingToPlayer(t){return this.id===c.NPC_ID?!1:e.__inject__.isMovingToPlayer(this._id,t.id)}setSkin(t){if(this.id===c.NPC_ID)throw new O(`Cannot setSkin before create`);return e.__inject__.setSkin(this._id,t),this}getSkin(){if(this.id===c.NPC_ID)throw new O(`Cannot getSkin before create`);return e.__inject__.getSkin(this._id)}isStreamedIn(t){return this.id===c.NPC_ID?!1:e.__inject__.isStreamedIn(this._id,t.id)}isAnyStreamedIn(){return this.id===c.NPC_ID?!1:e.__inject__.isAnyStreamedIn(this._id)}setInterior(t){if(this.id===c.NPC_ID)throw new O(`Cannot setInterior before create`);return e.__inject__.setInterior(this._id,t),this}getInterior(){return this.id===c.NPC_ID?0:e.__inject__.getInterior(this._id)}setHealth(t){if(this.id===c.NPC_ID)throw new O(`Cannot setHealth before create`);return e.__inject__.setHealth(this._id,t),this}getHealth(){return this.id===c.NPC_ID?0:e.__inject__.getHealth(this._id)}setArmour(t){if(this.id===c.NPC_ID)throw new O(`Cannot setArmour before create`);return e.__inject__.setArmour(this._id,t),this}getArmour(){return this.id===c.NPC_ID?0:e.__inject__.getArmour(this._id)}isDead(){return this.id===c.NPC_ID?!1:e.__inject__.isDead(this._id)}applyAnimation(t,n,r,i,a,o,s,l,u){if(this.id===c.NPC_ID)throw new O(`Cannot applyAnimation before create`);return e.__inject__.applyAnimation(this._id,t,n,r,i,a,o,s,l,u),this}setWeapon(t){if(this.id===c.NPC_ID)throw new O(`Cannot setWeapon before create`);return e.__inject__.setWeapon(this._id,t),this}getWeapon(){return this.id===c.NPC_ID?0:e.__inject__.getWeapon(this._id)}setAmmo(t){if(this.id===c.NPC_ID)throw new O(`Cannot setAmmo before create`);return e.__inject__.setAmmo(this._id,t),this}getAmmo(){return this.id===c.NPC_ID?0:e.__inject__.getAmmo(this._id)}setKeys(t,n,r){if(this.id===c.NPC_ID)throw new O(`Cannot setKeys before create`);return e.__inject__.setKeys(this._id,t,n,r),this}getKeys(){if(this.id===c.NPC_ID)throw new O(`Cannot getKeys before create`);return e.__inject__.getKeys(this._id)}setWeaponSkillLevel(t,n){if(this.id===c.NPC_ID)throw new O(`Cannot setWeaponSkillLevel before create`);return e.__inject__.setWeaponSkillLevel(this._id,t,n),this}getWeaponSkillLevel(t){if(this.id===c.NPC_ID)throw new O(`Cannot getWeaponSkillLevel before create`);return e.__inject__.getWeaponSkillLevel(this._id,t)}meleeAttack(t=-1,n=!1){if(this.id===c.NPC_ID)throw new O(`Cannot meleeAttack before create`);return e.__inject__.meleeAttack(this._id,t,n),this}stopMeleeAttack(){if(this.id===c.NPC_ID)throw new O(`Cannot stopMeleeAttack before create`);return e.__inject__.stopMeleeAttack(this._id),this}isMeleeAttacking(){return this.id===c.NPC_ID?!1:e.__inject__.isMeleeAttacking(this._id)}setFightingStyle(t){if(this.id===c.NPC_ID)throw new O(`Cannot setFightingStyle before create`);return e.__inject__.setFightingStyle(this._id,t),this}getFightingStyle(){return this.id===c.NPC_ID?ne.NORMAL:e.__inject__.getFightingStyle(this._id)}enableReloading(t=!0){if(this.id===c.NPC_ID)throw new O(`Cannot enableReloading before create`);return e.__inject__.enableReloading(this._id,t),this}isReloadEnabled(){return this.id===c.NPC_ID?!1:e.__inject__.isReloadEnabled(this._id)}isReloading(){return this.id===c.NPC_ID?!1:e.__inject__.isReloading(this._id)}enableInfiniteAmmo(t=!0){if(this.id===c.NPC_ID)throw new O(`Cannot enableInfiniteAmmo before create`);return e.__inject__.enableInfiniteAmmo(this._id,t),this}isInfiniteAmmoEnabled(){return this.id===c.NPC_ID?!1:e.__inject__.isInfiniteAmmoEnabled(this._id)}setWeaponState(t){if(this.id===c.NPC_ID)throw new O(`Cannot setWeaponState before create`);return e.__inject__.setWeaponState(this._id,t)}getWeaponState(){return this.id===c.NPC_ID?ve.UNKNOWN:e.__inject__.getWeaponState(this._id)}setAmmoInClip(t){if(this.id===c.NPC_ID)throw new O(`Cannot setAmmoInClip before create`);return e.__inject__.setAmmoInClip(this._id,t),this}getAmmoInClip(){return this.id===c.NPC_ID?0:e.__inject__.getAmmoInClip(this._id)}shoot(t,n,r,i,a,o,s=0,l=0,u=0,d=!0,f=h.ALL){if(this.id===c.NPC_ID)throw new O(`Cannot shoot before create`);return e.__inject__.shoot(this._id,t,n,r,i,a,o,s,l,u,d,f),this}isShooting(){return this.id===c.NPC_ID?!1:e.__inject__.isShooting(this._id)}aimAt(t,n,r,i=!1,a=-1,o=!0,s=0,l=0,u=0,d=h.ALL){if(this.id===c.NPC_ID)throw new O(`Cannot aimAt before create`);return e.__inject__.aimAt(this._id,t,n,r,i,a,o,s,l,u,d),this}aimAtPlayer(t,n=!1,r=-1,i=!0,a=0,o=0,s=0,l=0,u=0,d=0,f=h.ALL){if(this.id===c.NPC_ID)throw new O(`Cannot aimAtPlayer before create`);return e.__inject__.aimAtPlayer(this._id,t.id,n,r,i,a,o,s,l,u,d,f),this}stopAim(){if(this.id===c.NPC_ID)throw new O(`Cannot stopAim before create`);return e.__inject__.stopAim(this._id),this}isAiming(){return this.id===c.NPC_ID?!1:e.__inject__.isAiming(this._id)}isAimingAtPlayer(t){return this.id===c.NPC_ID?!1:e.__inject__.isAimingAtPlayer(this._id,t.id)}setWeaponAccuracy(t,n){if(this.id===c.NPC_ID)throw new O(`Cannot setWeaponAccuracy before create`);return e.__inject__.setWeaponAccuracy(this._id,t,n),this}getWeaponAccuracy(t){return this.id===c.NPC_ID?0:e.__inject__.getWeaponAccuracy(this._id,t)}setWeaponReloadTime(t,n){if(this.id===c.NPC_ID)throw new O(`Cannot setWeaponReloadTime before create`);return e.__inject__.setWeaponReloadTime(this._id,t,n)}getWeaponReloadTime(t){return this.id===c.NPC_ID?0:e.__inject__.getWeaponReloadTime(this._id,t)}getWeaponActualReloadTime(t){return this.id===c.NPC_ID?0:e.__inject__.getWeaponActualReloadTime(this._id,t)}setWeaponShootTime(t,n){if(this.id===c.NPC_ID)throw new O(`Cannot setWeaponShootTime before create`);return e.__inject__.setWeaponShootTime(this._id,t,n)}getWeaponShootTime(t){return this.id===c.NPC_ID?0:e.__inject__.getWeaponShootTime(this._id,t)}setWeaponClipSize(t,n){if(this.id===c.NPC_ID)throw new O(`Cannot setWeaponClipSize before create`);return e.__inject__.setWeaponClipSize(this._id,t,n)}getWeaponClipSize(t){return this.id===c.NPC_ID?0:e.__inject__.getWeaponClipSize(this._id,t)}getWeaponActualClipSize(t){return this.id===c.NPC_ID?0:e.__inject__.getWeaponActualClipSize(this._id,t)}enterVehicle(t,n,r=m.AUTO){if(this.id===c.NPC_ID)throw new O(`Cannot enterVehicle before create`);return e.__inject__.enterVehicle(this._id,t.id,n,r),this}exitVehicle(){if(this.id===c.NPC_ID)throw new O(`Cannot exitVehicle before create`);return e.__inject__.exitVehicle(this._id),this}putInVehicle(t,n){if(this.id===c.NPC_ID)throw new O(`Cannot putInVehicle before create`);return e.__inject__.putInVehicle(this._id,t.id,n)}removeFromVehicle(){if(this.id===c.NPC_ID)throw new O(`Cannot removeFromVehicle before create`);return e.__inject__.removeFromVehicle(this._id)}getVehicle(){return J.getInstance(this.getVehicleID())}getVehicleID(){if(this.id===c.NPC_ID)throw new O(`Cannot getVehicle before create`);return e.__inject__.getVehicle(this._id)}getVehicleSeat(){return this.id===c.NPC_ID?0:e.__inject__.getVehicleSeat(this._id)}getEnteringVehicle(){return J.getInstance(this.getEnteringVehicleId())}getEnteringVehicleId(){if(this.id===c.NPC_ID)throw new O(`Cannot getEnteringVehicle before create`);return e.__inject__.getEnteringVehicle(this._id)}getEnteringVehicleSeat(){return this.id===c.NPC_ID?0:e.__inject__.getEnteringVehicleSeat(this._id)}isEnteringVehicle(){return this.id===c.NPC_ID?!1:e.__inject__.isEnteringVehicle(this._id)}useVehicleSiren(t=!0){if(this.id===c.NPC_ID)throw new O(`Cannot useVehicleSiren before create`);return e.__inject__.useVehicleSiren(this._id,t)}isVehicleSirenUsed(){return this.id===c.NPC_ID?!1:e.__inject__.isVehicleSirenUsed(this._id)}setVehicleHealth(t){if(this.id===c.NPC_ID)throw new O(`Cannot setVehicleHealth before create`);return e.__inject__.setVehicleHealth(this._id,t)}getVehicleHealth(){return this.id===c.NPC_ID?0:e.__inject__.getVehicleHealth(this._id)}setVehicleHydraThrusters(t){if(this.id===c.NPC_ID)throw new O(`Cannot setVehicleHydraThrusters before create`);return e.__inject__.setVehicleHydraThrusters(this._id,t)}getVehicleHydraThrusters(){return this.id===c.NPC_ID?0:e.__inject__.getVehicleHydraThrusters(this._id)}setVehicleGearState(t){if(this.id===c.NPC_ID)throw new O(`Cannot setVehicleGearState before create`);return e.__inject__.setVehicleGearState(this._id,t)}getVehicleGearState(){return e.__inject__.getVehicleGearState(this._id)}setVehicleTrainSpeed(t){if(this.id===c.NPC_ID)throw new O(`Cannot setVehicleTrainSpeed before create`);return e.__inject__.setVehicleTrainSpeed(this._id,t)}getVehicleTrainSpeed(){return this.id===c.NPC_ID?0:e.__inject__.getVehicleTrainSpeed(this._id)}resetAnimation(){if(this.id===c.NPC_ID)throw new O(`Cannot resetAnimation before create`);return e.__inject__.resetAnimation(this._id)}setAnimation(t,n,r,i,a,o,s){if(this.id===c.NPC_ID)throw new O(`Cannot setAnimation before create`);return e.__inject__.setAnimation(this._id,t,n,r,i,a,o,s)}getAnimation(){return this.id===c.NPC_ID?0:e.__inject__.getAnimation(this._id)}clearAnimations(){if(this.id===c.NPC_ID)throw new O(`Cannot clearAnimations before create`);return e.__inject__.clearAnimations(this._id)}setSpecialAction(t){if(this.id===c.NPC_ID)throw new O(`Cannot setSpecialAction before create`);return e.__inject__.setSpecialAction(this._id,t)}getSpecialAction(){return e.__inject__.getSpecialAction(this._id)}startPlayback(t,n=!1,r=0,i=0,a=0,o=0,s=0,l=0){if(this.id===c.NPC_ID)throw new O(`Cannot startPlayback before create`);return e.__inject__.startPlayback(this._id,t,n,r,i,a,o,s,l)}startPlaybackEx(t,n=!1,r=0,i=0,a=0,o=0,s=0,l=0){if(this.id===c.NPC_ID)throw new O(`Cannot startPlaybackEx before create`);return e.__inject__.startPlaybackEx(this._id,t.id,n,r,i,a,o,s,l)}stopPlayback(){if(this.id===c.NPC_ID)throw new O(`Cannot stopPlayback before create`);return e.__inject__.stopPlayback(this._id)}pausePlayback(t=!0){if(this.id===c.NPC_ID)throw new O(`Cannot pausePlayback before create`);return e.__inject__.pausePlayback(this._id,t)}isPlayingPlayback(){return this.id===c.NPC_ID?!1:e.__inject__.isPlayingPlayback(this._id)}isPlaybackPaused(){return this.id===c.NPC_ID?!1:e.__inject__.isPlaybackPaused(this._id)}playNode(t,n=m.AUTO,r=g.AUTO,i=0,a=!0){if(this.id===c.NPC_ID)throw new O(`Cannot playNode before create`);return e.__inject__.playNode(this._id,t.id,n,r,i,a)}stopPlayingNode(){if(this.id===c.NPC_ID)throw new O(`Cannot stopPlayingNode before create`);return e.__inject__.stopPlayingNode(this._id)}pausePlayingNode(){if(this.id===c.NPC_ID)throw new O(`Cannot pausePlayingNode before create`);return e.__inject__.pausePlayingNode(this._id)}resumePlayingNode(){if(this.id===c.NPC_ID)throw new O(`Cannot resumePlayingNode before create`);return e.__inject__.resumePlayingNode(this._id)}isPlayingNodePaused(){return this.id===c.NPC_ID?!1:e.__inject__.isPlayingNodePaused(this._id)}isPlayingNode(){return this.id===c.NPC_ID?!1:e.__inject__.isPlayingNode(this._id)}changeNode(t,n){if(this.id===c.NPC_ID)throw new O(`Cannot changeNode before create`);return e.__inject__.changeNode(this._id,t.id,n)}updateNodePoint(t){if(this.id===c.NPC_ID)throw new O(`Cannot updateNodePoint before create`);return e.__inject__.updateNodePoint(this._id,t)}setInvulnerable(t=!0){if(this.id===c.NPC_ID)throw new O(`Cannot setInvulnerable before create`);return e.__inject__.setInvulnerable(this._id,t)}isInvulnerable(){return this.id===c.NPC_ID?!1:e.__inject__.isInvulnerable(this._id)}setSurfingOffsets(t,n,r){if(this.id===c.NPC_ID)throw new O(`Cannot setSurfingOffsets before create`);return e.__inject__.setSurfingOffsets(this._id,t,n,r)}getSurfingOffsets(){return e.__inject__.getSurfingOffsets(this._id)}setSurfingVehicle(t){if(this.id===c.NPC_ID)throw new O(`Cannot setSurfingVehicle before create`);return e.__inject__.setSurfingVehicle(this._id,t.id)}getSurfingVehicle(){return J.getInstance(this.getSurfingVehicleId())}getSurfingVehicleId(){if(this.id===c.NPC_ID)throw new O(`Cannot getSurfingVehicle before create`);return e.__inject__.getSurfingVehicle(this._id)}setSurfingObject(t){if(this.id===c.NPC_ID)throw new O(`Cannot setSurfingObject before create`);return t.isGlobal()?e.__inject__.setSurfingObject(this._id,t.id):0}getSurfingObject(){return Y.getInstance(this.getSurfingObjectId())}getSurfingObjectId(){if(this.id===c.NPC_ID)throw new O(`Cannot getSurfingObject before create`);return e.__inject__.getSurfingObject(this._id)}setSurfingPlayerObject(e){if(this.id===c.NPC_ID)throw new O(`Cannot setSurfingPlayerObject before create`);return e.isGlobal()?0:this._setSurfingPlayerObject(e.id)}getSurfingPlayerObject(){return Y.getInstance(this.getSurfingPlayerObjectId(),this.getPlayer())}_setSurfingPlayerObject(t){if(this.id===c.NPC_ID)throw new O(`Cannot setSurfingPlayerObject before create`);return e.__inject__.setSurfingPlayerObject(this._id,t)}getSurfingPlayerObjectId(){if(this.id===c.NPC_ID)throw new O(`Cannot getSurfingPlayerObject before create`);return e.__inject__.getSurfingPlayerObject(this._id)}resetSurfingData(){if(this.id===c.NPC_ID)throw new O(`Cannot resetSurfingData before create`);return e.__inject__.resetSurfingData(this._id)}setSurfingDynamicObject(e){return this._setSurfingPlayerObject(Q.getItemInternalID(new X(this._id),S.OBJECT,e.id))}getSurfingDynamicObject(){return Jb.getInstance(this.getSurfingDynamicObjectId())}getSurfingDynamicObjectId(){return Q.getItemStreamerID(new X(this._id),S.OBJECT,this.getSurfingPlayerObjectId())}isSpawned(){return this.id===c.NPC_ID?!1:e.__inject__.isSpawned(this._id)}kill(t,n){if(this.id===c.NPC_ID)throw new O(`Cannot kill before create`);return e.__inject__.kill(this._id,typeof t==`number`?t:t.id,n)}setVelocity(t,n,r){if(this.id===c.NPC_ID)throw new O(`Cannot setVelocity before create`);return e.__inject__.setVelocity(this._id,t,n,r)}getVelocity(){if(this.id===c.NPC_ID)throw new O(`Cannot getVelocity before create`);return e.__inject__.getVelocity(this._id)}getPlayerAimingAt(){if(this.id===c.NPC_ID)throw new O(`Cannot getPlayerAimingAt before create`);let t=e.__inject__.getPlayerAimingAt(this._id);return t===c.PLAYER_ID?null:X.getInstance(t)}getPlayerMovingTo(){if(this.id===c.NPC_ID)throw new O(`Cannot getPlayerMovingTo before create`);let t=e.__inject__.getPlayerMovingTo(this._id);return t===c.PLAYER_ID?null:X.getInstance(t)}getPosMovingTo(){if(this.id===c.NPC_ID)throw new O(`Cannot getPosMovingTo before create`);return e.__inject__.getPosMovingTo(this._id)}getCustomSkin(){if(this.id===c.NPC_ID)throw new O(`Cannot getCustomSkin before create`);return e.__inject__.getCustomSkin(this._id)}setAngleToPos(t,n,r){if(this.id===c.NPC_ID)throw new O(`Cannot setAngleToPos before create`);return e.__inject__.setAngleToPos(this._id,t,n,r)}setAngleToPlayer(t){if(this.id===c.NPC_ID)throw new O(`Cannot setAngleToPlayer before create`);return e.__inject__.setAngleToPlayer(this._id,t.id)}setVehiclePos(t,n,r,i){if(this.id===c.NPC_ID)throw new O(`Cannot setVehiclePosition before create`);return e.__inject__.setVehiclePos(this._id,t,n,r,i)}setVehicleRot(t,n,r,i){if(this.id===c.NPC_ID)throw new O(`Cannot setVehicleRotation before create`);return e.__inject__.setVehicleRot(this._id,t,n,r,i)}static startRecordingPlayerData(t,n,r){if(t.isRecording)throw new O(`It should be stopped before recording`);e.__inject__.startRecordingPlayerData(t.id,n,r),t[B].isRecording=!0}static stopRecordingPlayerData(t){if(!t.isRecording)throw new O(`It should be started before stop`);e.__inject__.stopRecordingPlayerData(t.id),t[B].isRecording=!1}static isValid(t){return e.__inject__.isValid(t)}static getInstance(e){return Jv.get(e)}static getInstances(){return[...Jv.values()]}static __inject__={create:rl,destroy:il,isValid:al,spawn:ol,respawn:sl,setPos:cl,setRot:ll,getRot:ul,setFacingAngle:dl,getFacingAngle:fl,setVirtualWorld:pl,getVirtualWorld:ml,move:hl,moveToPlayer:gl,stopMove:_l,isMoving:vl,isMovingToPlayer:yl,setSkin:bl,getSkin:xl,isStreamedIn:Sl,isAnyStreamedIn:Cl,setInterior:wl,getInterior:Tl,setHealth:El,getHealth:Dl,setArmour:Ol,getArmour:kl,isDead:Al,applyAnimation:jl,setWeapon:Ml,getWeapon:Nl,setAmmo:Pl,getAmmo:Fl,setKeys:Il,getKeys:Ll,setWeaponSkillLevel:Rl,getWeaponSkillLevel:zl,meleeAttack:Bl,stopMeleeAttack:Vl,isMeleeAttacking:Hl,setFightingStyle:Ul,getFightingStyle:Wl,enableReloading:Gl,isReloadEnabled:Kl,isReloading:ql,enableInfiniteAmmo:Jl,isInfiniteAmmoEnabled:Yl,setWeaponState:Xl,getWeaponState:Zl,setAmmoInClip:Ql,getAmmoInClip:$l,shoot:eu,isShooting:tu,aimAt:nu,aimAtPlayer:ru,stopAim:iu,isAiming:au,isAimingAtPlayer:ou,setWeaponAccuracy:su,getWeaponAccuracy:cu,setWeaponReloadTime:lu,getWeaponReloadTime:uu,getWeaponActualReloadTime:du,setWeaponShootTime:fu,getWeaponShootTime:pu,setWeaponClipSize:mu,getWeaponClipSize:hu,getWeaponActualClipSize:gu,enterVehicle:_u,exitVehicle:vu,putInVehicle:yu,removeFromVehicle:bu,getVehicle:xu,getVehicleSeat:Su,getEnteringVehicle:Cu,getEnteringVehicleSeat:wu,isEnteringVehicle:Tu,useVehicleSiren:Eu,isVehicleSirenUsed:Du,setVehicleHealth:Ou,getVehicleHealth:ku,setVehicleHydraThrusters:Au,getVehicleHydraThrusters:ju,setVehicleGearState:Mu,getVehicleGearState:Nu,setVehicleTrainSpeed:Pu,getVehicleTrainSpeed:Fu,resetAnimation:Iu,setAnimation:Lu,getAnimation:Ru,clearAnimations:zu,setSpecialAction:Bu,getSpecialAction:Vu,startPlayback:Hu,startPlaybackEx:Uu,stopPlayback:Wu,pausePlayback:Gu,isPlayingPlayback:Ku,isPlaybackPaused:qu,playNode:Ju,stopPlayingNode:Yu,pausePlayingNode:Xu,resumePlayingNode:Zu,isPlayingNodePaused:Qu,isPlayingNode:$u,changeNode:ed,updateNodePoint:td,setInvulnerable:nd,isInvulnerable:rd,setSurfingOffsets:id,getSurfingOffsets:ad,setSurfingVehicle:od,getSurfingVehicle:sd,setSurfingObject:cd,getSurfingObject:ld,setSurfingPlayerObject:ud,getSurfingPlayerObject:dd,resetSurfingData:fd,isSpawned:pd,kill:md,setVelocity:hd,getVelocity:gd,getPlayerAimingAt:_d,getPlayerMovingTo:vd,getPosMovingTo:yd,getCustomSkin:bd,setAngleToPos:xd,setAngleToPlayer:Sd,setVehiclePos:Cd,setVehicleRot:wd,startRecordingPlayerData:tc,stopRecordingPlayerData:nc}},Qx=class e{_filePath=``;_id=c.RECORD_ID;get id(){return this._id}get filePath(){return this._filePath}constructor(e){if(typeof e==`string`?(this._filePath=e,this._id=samp.callNative(`NPC_LoadRecord`,`s`,this._filePath)):this._id=e,Zv.has(this._id))return Zv.get(this._id)}unload(){let e=this._id;if(!q.skip){let t=!!samp.callNative(`NPC_UnloadRecord`,`i`,this._id);return t&&(this._id=c.RECORD_ID,this._filePath=``,Zv.delete(e)),t}return this._id=c.RECORD_ID,this._filePath=``,Zv.delete(e),!0}isValid(){return q.skip&&this._id!==c.RECORD_ID?!0:e.isValid(this._id)}static isValid(e){return!!samp.callNative(`NPC_IsValidRecord`,`i`,e)}static getCount(){return samp.callNative(`NPC_GetRecordCount`,``)}static unloadAll(){let e=!!samp.callNative(`NPC_UnloadAllRecords`,``);return e&&Zv.clear(),e}static getInstance(e){return Zv.get(e)}static getInstances(){return[...Zv.values()]}},$x=class{_id=c.NODE_ID;get id(){return this._id}constructor(e){if(this._id=e,Yv.has(this._id))return Yv.get(this._id);Yv.set(this._id,this)}open(){samp.callNative(`NPC_OpenNode`,`i`,this._id)&&!Yv.has(this._id)&&Yv.set(this._id,this)}close(){if(!q.skip){let e=!!samp.callNative(`NPC_CloseNode`,`i`,this._id);return e&&(Yv.delete(this._id),this._id=c.NODE_ID),e}return Yv.delete(this._id),this._id=c.NODE_ID,!0}isOpen(){return q.skip&&this._id!==c.NODE_ID?!0:!!samp.callNative(`NPC_IsNodeOpen`,`i`,this._id)}getType(){return samp.callNative(`NPC_GetNodeType`,`i`,this._id)}setPoint(e){return!!samp.callNative(`NPC_SetNodePoint`,`ii`,this._id,e)}getPointPosition(){let[e,t,n,r]=samp.callNative(`NPC_GetNodePointPosition`,`iFFF`,this._id);return{x:e,y:t,z:n,ret:!!r}}getPointCount(){return samp.callNative(`NPC_GetNodePointCount`,`i`,this._id)}getInfo(){let[e,t,n,r]=samp.callNative(`NPC_GetNodeInfo`,`iIII`,this._id);return{vehNodes:e,pedNodes:t,naviNode:n,ret:!!r}}static getInstance(e){return Yv.get(e)}static getInstances(){return[...Yv.values()]}},eS=class e{_id=c.PATH_ID;get id(){return this._id}constructor(e){if(e!==void 0){if(Xv.has(e))return Xv.get(e);this._id=e}else this._id=samp.callNative(`NPC_CreatePath`,``)}destroy(){let e=!!samp.callNative(`NPC_DestroyPath`,`i`,this._id);return e&&(this._id=c.PATH_ID,Xv.delete(this._id)),e}addPoint(e,t,n,r=.2){return!!samp.callNative(`NPC_AddPointToPath`,`iffff`,this._id,e,t,n,r)}removePoint(e){return!!samp.callNative(`NPC_RemovePointFromPath`,`ii`,this._id,e)}clear(){return!!samp.callNative(`NPC_ClearPath`,`i`,this._id)}getPointCount(){return samp.callNative(`NPC_GetPathPointCount`,`i`,this._id)}getPoint(e){let[t,n,r,i=.2,a]=samp.callNative(`NPC_GetPathPoint`,`ii`,this._id,e);return{x:t,y:n,z:r,stopRange:i,ret:!!a}}isValid(){return e.isValid(this._id)}getCurrentPointIndex(){return samp.callNative(`NPC_GetCurrentPathPointIndex`,`i`,this._id)}move(e=m.AUTO,t=g.AUTO,n=!1){return!!samp.callNative(`NPC_MoveByPath`,`iiifi`,this._id,this._id,e,t,n)}hasPointInRadius(e,t,n,r){return!!samp.callNative(`NPC_HasPathPointInRange`,`iiffff`,this._id,this._id,e,t,n,r)}static destroyAll(){let e=!!samp.callNative(`NPC_DestroyAllPath`,``);return e&&Xv.clear(),e}static getCount(){return samp.callNative(`NPC_GetPathCount`,``)}static isValid(e){return!!samp.callNative(`NPC_IsValidPath`,`i`,e)}static getInstance(e){return Xv.get(e)}static getInstances(){return[...Xv.values()]}};K.onExit(({next:e})=>($.getInstances().forEach(e=>{e.isValid()&&e.destroy()}),Jv.clear(),$x.getInstances().forEach(e=>{e.isOpen()&&e.close()}),Yv.clear(),eS.destroyAll(),Xv.clear(),Qx.getInstances().forEach(e=>{e.isValid()&&e.unload()}),Zv.clear(),e()));const[tS]=L({name:`OnClientMessageI18n`,identifier:`iai`,beforeEach(e,t){return{color:e,buffer:t,string:R.decodeFromBuf(t)}}}),[nS]=L({name:`OnNPCFinishMove`,identifier:`i`,beforeEach(e){return{npc:$.getInstance(e)}}}),[rS]=L({name:`OnNPCCreate`,identifier:`i`,beforeEach(e){return{npc:$.getInstance(e)}}}),[iS]=L({name:`OnNPCDestroy`,identifier:`i`,beforeEach(e){return{npc:$.getInstance(e)}},afterEach({npc:e}){Jv.delete(e.id)}}),[aS]=L({name:`OnNPCWeaponStateChange`,identifier:`iii`,beforeEach(e,t,n){return{npc:$.getInstance(e),newState:t,oldState:n}}}),[oS]=L({name:`OnNPCTakeDamage`,identifier:`iiiii`,beforeEach(e,t,n,r,i){return{npc:$.getInstance(e),damager:X.getInstance(t),damage:n,weapon:r,bodyPart:i}}}),[sS]=L({name:`OnNPCGiveDamage`,identifier:`iiiii`,beforeEach(e,t,n,r,i){return{npc:$.getInstance(e),damager:X.getInstance(t),damage:n,weapon:r,bodyPart:i}}}),[cS]=L({name:`OnNPCDeath`,identifier:`iii`,beforeEach(e,t,n){let r=X.getInstance(t)||c.PLAYER_ID;return{npc:$.getInstance(e),killer:r,reason:n}}}),[lS]=L({name:`OnNPCSpawn`,identifier:`i`,beforeEach(e){return{npc:$.getInstance(e)}}}),[uS]=L({name:`OnNPCRespawn`,identifier:`i`,beforeEach(e){return{npc:$.getInstance(e)}}}),[dS]=L({name:`OnNPCPlaybackStart`,identifier:`ii`,beforeEach(e,t){return{npc:$.getInstance(e),record:Qx.getInstance(t),recordId:t}}}),[fS]=L({name:`OnNPCPlaybackEnd`,identifier:`ii`,beforeEach(e,t){return{npc:$.getInstance(e),record:Qx.getInstance(t),recordId:t}}}),[pS]=L({name:`OnNPCWeaponShot`,identifier:`iiiifff`,beforeEach(e,t,n,r,i,a,o){return{npc:$.getInstance(e),weapon:t,hitType:n,hitId:r,fX:i,fY:a,fZ:o}}}),[mS]=L({name:`OnNPCFinishNodePoint`,identifier:`iii`,beforeEach(e,t,n){return{npc:$.getInstance(e),node:$x.getInstance(t),nodeId:t,pointId:n}}}),[hS]=L({name:`OnNPCFinishNode`,identifier:`ii`,beforeEach(e,t){return{npc:$.getInstance(e),node:$x.getInstance(t),nodeId:t}}}),[gS]=L({name:`OnNPCChangeNode`,identifier:`iii`,beforeEach(e,t,n){return{npc:$.getInstance(e),newNode:$x.getInstance(t),oldNode:$x.getInstance(n),newNodeId:t,oldNodeId:n}}}),[_S]=L({name:`OnNPCFinishMovePath`,identifier:`ii`,beforeEach(e,t){return{npc:$.getInstance(e),path:eS.getInstance(t),pathId:t}}}),[vS]=L({name:`OnNPCFinishMovePathPoint`,identifier:`iii`,beforeEach(e,t,n){return{npc:$.getInstance(e),path:eS.getInstance(t),pathId:t,pointIndex:n}}}),yS=Object.freeze({onClientMessage:tS,onFinishMove:nS,onCreate:rS,onDestroy:iS,onSpawn:lS,onRespawn:uS,onWeaponStateChange:aS,onTakeDamage:oS,onGiveDamage:sS,onDeath:cS,onPlaybackStart:dS,onPlaybackEnd:fS,onWeaponShot:pS,onFinishNodePoint:mS,onFinishNode:hS,onChangeNode:gS,onFinishMovePath:_S,onFinishMovePathPoint:vS});var bS=class e{constructor(){throw new Kr(`This is a static class and cannot be instantiated.`)}static getNetworkStats(){return e.__inject__.getNetworkStats()}static getPlayerNetworkStats(t){return e.__inject__.getPlayerNetworkStats(t.id)}static getBytesReceived(t){return e.__inject__.getBytesReceived(t.id)}static getBytesSent(t){return e.__inject__.getBytesSent(t.id)}static getConnectionStatus(t){return e.__inject__.getConnectionStatus(t.id)}static getConnectedTime(t){return e.__inject__.getConnectedTime(t.id)}static getIpPort(t){return e.__inject__.getIpPort(t.id)}static getMessagesReceived(t){return e.__inject__.getMessagesReceived(t.id)}static getMessagesRecvPerSecond(t){return e.__inject__.getMessagesRecvPerSecond(t.id)}static getMessagesSent(t){return e.__inject__.getMessagesSent(t.id)}static getPacketLossPercent(t){return e.__inject__.getPacketLossPercent(t.id)}static __inject__={getNetworkStats:Wa,getPlayerNetworkStats:Ua,getBytesReceived:Ma,getBytesSent:Pa,getConnectionStatus:La,getConnectedTime:Aa,getIpPort:Ra,getMessagesReceived:ja,getMessagesRecvPerSecond:Fa,getMessagesSent:Na,getPacketLossPercent:Ia}},xS=class e{_text;_time;_style;get text(){return this._text}set text(e){this._text=e}get time(){return this._time}set time(e){this._time=e}get style(){return this._style}set style(e){this._style=e}constructor(e,t,n){this._text=e,this._time=t,this._style=n}static hideForAll(t){e.__inject__.hideForAll(t)}static has(t,n){return e.__inject__.has(t.id,n)}forAll(t=`win1252`){e.__inject__.forAll(R.encodeToBuf(R.convertSpecialChar(this.text),t),this.time,this.style)}forPlayer(t,n=`win1252`){e.__inject__.forPlayer(t.id,R.encodeToBuf(R.convertSpecialChar(this.text),n),this.time,this.style)}hideForPlayer(t){return e.__inject__.hideForPlayer(t.id,this.style)}static __inject__={hideForAll:qi,has:Oo,forAll:Ki,forPlayer:Do,hideForPlayer:Ao}},SS=class e{sourceInfo=null;_id=c.MENU;get id(){return this._id}constructor(t){if(typeof t==`number`){if(t===c.MENU)throw new D(`Invalid id`);this._id=t;let n=e.getInstance(this._id);if(n)return n;qv.set(this.id,this)}else this.sourceInfo=t}create(){if(!this.sourceInfo)throw new D(`Cannot create with only id`);if(this._id!==c.MENU)throw new D(`Cannot be created twice`);let{title:t,columns:n,x:r,y:i,colWidth:a,charset:o=`ISO-8859-1`}=this.sourceInfo,[s,l]=a;if(this._id=e.__inject__.create(t,n,r,i,s,l,o),this.id===c.MENU||e.getInstances().length===u.MAX_MENUS)throw new D(`Cannot create menu`);return qv.set(this._id,this),this}destroy(){if(this._id===c.MENU)throw new D(`Cannot destroy before create`);return q.skip||e.__inject__.destroy(this.id),qv.delete(this._id),this._id=c.MENU,this}addItem(t,n){if(this._id===c.MENU)throw new D(`Cannot addItem before create`);if(t!==0&&t!==1)throw new D(`Wrong number of columns`);return e.__inject__.addItem(this.id,t,n,this.sourceInfo?.charset||`ISO-8859-1`),this}setColumnHeader(t,n){if(this._id===c.MENU)throw new D(`Cannot setColumnHeader before create`);if(t!==0&&t!==1)throw new D(`Wrong number of columns`);return e.__inject__.setColumnHeader(this.id,t,n,this.sourceInfo?.charset||`ISO-8859-1`),this}disable(){if(this._id===c.MENU)throw new D(`Cannot disable menu before create`);return e.__inject__.disable(this.id),this}disableRow(t){if(this._id===c.MENU)throw new D(`Cannot disable row before create`);return e.__inject__.disableRow(this.id,t)}isValid(){return q.skip&&this.id!==c.MENU?!0:e.isValid(this.id)}showForPlayer(t){if(this._id===c.MENU)throw new D(`Cannot show menu before create`);return e.__inject__.showForPlayer(this.id,t.id)}hideForPlayer(t){if(this._id===c.MENU)throw new D(`Cannot hide menu before create`);return e.__inject__.hideForPlayer(this.id,t.id)}isDisabled(){return this._id===c.MENU?!1:e.__inject__.isDisabled(this.id)}isRowDisabled(t){return this._id===c.MENU?!1:e.__inject__.isRowDisabled(this.id,t)}getItems(t){return this._id===c.MENU?0:e.__inject__.getItems(this.id,t)}getPos(){return e.__inject__.getPos(this.id)}getColumnWidth(){return e.__inject__.getColumnWidth(this.id)}getColumnHeader(t){if(this._id===c.MENU)throw new D(`Cannot get column header before create`);return e.__inject__.getColumnHeader(this.id,t,this.sourceInfo?.charset||`ISO-8859-1`)}getItem(t,n){if(this._id===c.MENU)throw new D(`Cannot get item before create`);if(n<0||n>this.getItems(t)-1)throw new D(`invalid getItem range`);return e.__inject__.getItem(this.id,t,n,this.sourceInfo?.charset||`ISO-8859-1`)}static isValid(t){return e.__inject__.isValid(t)}static getInstance(e){return qv.get(e)}static getInstances(){return[...qv.values()]}static getInstanceByPlayer(e){return this.getInstance(jp(e.id))}static __inject__={create:Vv,destroy:Tp,addItem:Hv,setColumnHeader:Uv,disable:kp,disableRow:Ap,isValid:Op,showForPlayer:Ep,hideForPlayer:Dp,isDisabled:bp,isRowDisabled:xp,getItems:Sp,getPos:Cp,getColumnWidth:wp,getColumnHeader:zv,getItem:Bv,getPlayerMenu:jp}};K.onExit(({next:e})=>(SS.getInstances().forEach(e=>e.destroy()),qv.clear(),e()));const[CS]=L({name:`OnPlayerExitedMenu`,identifier:`i`,beforeEach(e){return{player:X.getInstance(e)}}}),[wS]=L({name:`OnPlayerSelectedMenuRow`,identifier:`ii`,beforeEach(e,t){let n=X.getInstance(e);return{player:n,menu:SS.getInstanceByPlayer(n),row:t}}}),TS=Object.freeze({onPlayerExited:CS,onPlayerSelectedRow:wS});var ES=class e{sourceInfo=null;_player=null;_id=c.GANG_ZONE;get id(){return this._id}constructor(t,n){if(typeof t==`number`){if(t===c.GANG_ZONE)throw new E(`Invalid id`);n&&(this._player=n);let r=e.getInstance(t,n);if(r)return r;this._id=t,this.isGlobal()?Kv.set(this._id,this):n&&(V.has(n)||V.set(n,new Map),V.get(this.getPlayer()).set(this.id,this))}else this.sourceInfo=t,this._player=null}create(){if(!this.sourceInfo)throw new E(`Cannot create with only id`);if(this.id!==c.GANG_ZONE)throw new E(`Cannot create again`);let{player:t}=this.sourceInfo;if(t){let{minX:n,minY:r,maxX:i,maxY:a}=this.sourceInfo;if(this._id=e.__inject__.createPlayer(t.id,n,r,i,a),this.id===c.GANG_ZONE||e.getInstances(t).length===u.MAX_GANG_ZONES)throw new E(`Cannot create playerGangZone`);V.has(t)||V.set(t,new Map),V.get(t).set(this._id,this)}else{let{minX:t,minY:n,maxX:r,maxY:i}=this.sourceInfo;if(this._id=e.__inject__.create(t,n,r,i),this.id===c.GANG_ZONE||e.getInstances().length===u.MAX_GANG_ZONES)throw new E(`Cannot create gangZone`);Kv.set(this.id,this)}return this}destroy(){if(this.id===c.GANG_ZONE)throw new E(`Cannot destroy before create`);let t=this.getPlayer();if(!t)q.skip||e.__inject__.destroy(this.id),Kv.delete(this.id);else if(q.skip||e.__inject__.destroyPlayer(t.id,this.id),V.has(t)){let e=V.get(t);e.delete(this.id),e.size||V.delete(t)}this._id=c.GANG_ZONE}isGlobal(){return!(this.sourceInfo?this.sourceInfo.player:this._player)}isPlayer(){return!this.isGlobal()}getPlayer(){return this._player?this._player:this.sourceInfo&&this.sourceInfo.player?this.sourceInfo.player:null}getPlayerId(){let e=this.getPlayer();return e?e.id:c.PLAYER_ID}showForAll(t){if(this.id===c.GANG_ZONE)throw new E(`Cannot show gangzone before create`);if(!this.getPlayer())return e.__inject__.showForAll(this.id,t),this;throw new E(`player's gangzone should not be show for all.`)}showForPlayer(t,n){if(this.id===c.GANG_ZONE)throw new E(`Cannot show gangzone before create`);let r=this.getPlayer();if(r)e.__inject__.showPlayer(r.id,this.id,z(t));else if(n)e.__inject__.showForPlayer(n.id,this.id,t);else throw new E(`invalid player for show`);return this}hideForAll(){if(this.id===c.GANG_ZONE)throw new E(`Cannot hide gangzone before create`);if(!this.getPlayer())return e.__inject__.hideForAll(this.id),this;throw new E(`player's gangzone should not be hide for all.`)}hideForPlayer(t){if(this.id===c.GANG_ZONE)throw new E(`Cannot hide gangzone before create`);let n=this.getPlayer();if(n)e.__inject__.hidePlayer(n.id,this.id);else if(t)e.__inject__.hideForPlayer(t.id,this.id);else throw new E(`invalid player for hide`);return this}flashForAll(t){if(this.id===c.GANG_ZONE)throw new E(`Cannot flash gangzone before create`);if(!this.getPlayer())return e.__inject__.flashForAll(this.id,t),this;throw new E(`player's gangzone should not be flash for all.`)}flashForPlayer(t,n){if(this.id===c.GANG_ZONE)throw new E(`Cannot flash gangzone before create`);let r=this.getPlayer();if(r)e.__inject__.flashPlayer(r.id,this.id,z(n));else if(t)e.__inject__.flashForPlayer(t.id,this.id,n);else throw new E(`invalid player for flash`);return this}stopFlashForAll(){if(this.id===c.GANG_ZONE)throw new E(`Cannot stop flash gangzone before create`);if(!this.getPlayer())return e.__inject__.stopFlashForAll(this.id),this;throw new E(`player's gangzone should not be stop flash for all.`)}stopFlashForPlayer(t){if(this.id===c.GANG_ZONE)throw new E(`Cannot stop flash gangzone before create`);let n=this.getPlayer();if(n)e.__inject__.stopFlashPlayer(n.id,this.id);else if(t)e.__inject__.stopFlashForPlayer(t.id,this.id);else throw new E(`invalid player for flash`);return this}isValid(){if(q.skip&&this.id!==c.GANG_ZONE)return!0;if(this.id===c.GANG_ZONE)return!1;let t=this.getPlayer();return t?e.isValidPlayer(t.id,this.id):e.isValidGlobal(this.id)}isPlayerIn(t){if(this.id===c.GANG_ZONE)return!1;let n=this.getPlayer();return n?e.__inject__.isPlayerInPlayer(n.id,this.id):e.__inject__.isPlayerIn(t.id,this.id)}isVisibleForPlayer(t){if(this.id===c.GANG_ZONE)return!1;let n=this.getPlayer();return n?e.__inject__.isVisiblePlayer(n.id,this.id):e.__inject__.isVisibleForPlayer(t.id,this.id)}getColorForPlayer(t){if(this.id===c.GANG_ZONE)throw new E(`Cannot get color before create`);let n=this.getPlayer();return n?e.__inject__.getColorPlayer(n.id,this.id):e.__inject__.getColorForPlayer(t.id,this.id)}getFlashColorForPlayer(t){if(this.id===c.GANG_ZONE)throw new E(`Cannot get flash color before create`);let n=this.getPlayer();return n?e.__inject__.getFlashColorPlayer(n.id,this.id):e.__inject__.getFlashColorForPlayer(t.id,this.id)}isFlashingForPlayer(t){if(this.id===c.GANG_ZONE)return!1;let n=this.getPlayer();return n?e.__inject__.isFlashingPlayer(n.id,this.id):e.__inject__.isFlashingForPlayer(t.id,this.id)}getPos(){if(this.id===c.GANG_ZONE)throw new E(`Cannot get position before create`);let t=this.getPlayer();return t?e.__inject__.getPosPlayer(t.id,this.id):e.__inject__.getPos(this.id)}useCheck(t){if(this.id===c.GANG_ZONE)throw new E(`Cannot use check before create`);let n=this.getPlayer();return n?e.__inject__.useCheckPlayer(n.id,this.id,t):e.__inject__.useCheck(this.id,t),this}static isValidPlayer(t,n){return e.__inject__.isValidPlayer(t,n)}static isValidGlobal(t){return e.__inject__.isValidGlobal(t)}static getInstance(e,t){if(!t)return Kv.get(e);if(t.id!==c.PLAYER_ID)return V.get(t)?.get(e)}static getInstances(e){return e?e.id===c.PLAYER_ID?[]:[...V.get(e)?.values()||[]]:[...Kv.values()]}static getPlayersInstances(){return Array.from(V.entries()).map(([e,t])=>[e,Array.from(t.values())])}static __inject__={create:dm,destroy:fm,showForAll:mm,hideForAll:gm,flashForAll:vm,stopFlashForAll:bm,getPos:lm,useCheck:um,createPlayer:xm,destroyPlayer:Sm,showPlayer:Cm,showForPlayer:pm,hidePlayer:wm,hideForPlayer:hm,flashPlayer:Tm,flashForPlayer:_m,stopFlashPlayer:Em,stopFlashForPlayer:ym,getPosPlayer:Nm,useCheckPlayer:Pm,isPlayerIn:im,isPlayerInPlayer:Om,isVisibleForPlayer:am,isVisiblePlayer:km,getColorForPlayer:om,getColorPlayer:Am,getFlashColorForPlayer:sm,getFlashColorPlayer:jm,isFlashingForPlayer:cm,isFlashingPlayer:Mm,isValidPlayer:Dm,isValidGlobal:rm}};Ab.onDisconnect(({player:e,next:t})=>(V.has(e)&&(ES.getInstances(e).forEach(e=>{e.isValid()&&e.destroy()}),V.delete(e)),t())),K.onExit(({next:e})=>(ES.getInstances().forEach(e=>e.destroy()),ES.getPlayersInstances().map(([,e])=>e).flat().forEach(e=>e.destroy()),Kv.clear(),V.clear(),e()));const[DS]=L({name:`OnPlayerEnterGangZone`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),gangZone:ES.getInstance(t)}}}),[OS]=L({name:`OnPlayerLeaveGangZone`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),gangZone:ES.getInstance(t)}}}),[kS]=L({name:`OnPlayerEnterPlayerGangZone`,identifier:`ii`,beforeEach(e,t){let n=X.getInstance(e);return{player:n,gangZone:ES.getInstance(t,n)}}}),[AS]=L({name:`OnPlayerLeavePlayerGangZone`,identifier:`ii`,beforeEach(e,t){let n=X.getInstance(e);return{player:n,gangZone:ES.getInstance(t,n)}}}),[jS]=L({name:`OnPlayerClickGangZone`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),gangZone:ES.getInstance(t)}}}),[MS]=L({name:`OnPlayerClickPlayerGangZone`,identifier:`ii`,beforeEach(e,t){let n=X.getInstance(e);return{player:n,gangZone:ES.getInstance(t,n)}}}),NS=Object.freeze({onPlayerEnterGlobal:DS,onPlayerLeaveGlobal:OS,onPlayerEnterPlayer:kS,onPlayerLeavePlayer:AS,onPlayerClickGlobal:jS,onPlayerClickPlayer:MS});var PS=class e{sourceInfo=null;_player=null;_id=c.TEXT_DRAW;get id(){return this._id}constructor(t,n){if(typeof t==`number`){if(t===c.TEXT_DRAW||t===c.PLAYER_TEXT_DRAW)throw new j(`Invalid id`);n&&(this._player=n);let r=e.getInstance(t,n);if(r)return r;this._id=t,this.isGlobal()?Qv.set(this._id,this):n&&(H.has(n)||H.set(n,new Map),H.get(this.getPlayer()).set(this.id,this))}else this.sourceInfo=t,this._player=null}create(){if(!this.sourceInfo)throw new j(`Cannot create with only id`);if(this.id!==c.TEXT_DRAW)throw new j(`Cannot create again`);let{x:t,y:n,text:r,player:i,charset:a=`ISO-8859-1`}=this.sourceInfo,o=R.encodeToBuf(R.convertSpecialChar(r),a);if(i){if(this._id=e.__inject__.createPlayer(i.id,t,n,o),this.id===c.TEXT_DRAW||e.getInstances(i).length===u.MAX_TEXT_DRAWS)throw new j(`Cannot create player textdraw`);H.has(i)||H.set(i,new Map),H.get(i).set(this._id,this)}else{if(this._id=e.__inject__.create(t,n,o),this.id===c.TEXT_DRAW||e.getInstances().length===u.MAX_TEXT_DRAWS)throw new j(`Cannot create textdraw`);Qv.set(this.id,this)}return this}destroy(){this.id===c.TEXT_DRAW&&e.beforeCreateWarn(`destroy textdraw`);let t=this.getPlayer();if(!t)q.skip||e.__inject__.destroy(this.id),Qv.delete(this.id);else if(q.skip||e.__inject__.destroyPlayer(t.id,this.id),H.has(t)){let e=H.get(t);e.delete(this.id),e.size||H.delete(t)}return this._id=c.TEXT_DRAW,this}setFont(t){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set font`),this;let n=this.getPlayer();return n?e.__inject__.setFontPlayer(n.id,this.id,t):e.__inject__.setFont(this.id,t),this}setColor(t){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set color`),this;let n=this.getPlayer();return n?e.__inject__.setColorPlayer(n.id,this.id,t):e.__inject__.setColor(this.id,t),this}setBoxColors(t){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set box color`),this;let n=this.getPlayer();return n?e.__inject__.setBoxColorPlayer(n.id,this.id,t):e.__inject__.setBoxColor(this.id,t),this}setBackgroundColors(t){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set background color`),this;let n=this.getPlayer();return n?e.__inject__.setBackgroundColorPlayer(n.id,this.id,t):e.__inject__.setBackgroundColor(this.id,t),this}setAlignment(t){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set alignment`),this;let n=this.getPlayer();return n?e.__inject__.setAlignmentPlayer(n.id,this.id,t):e.__inject__.setAlignment(this.id,t),this}setLetterSize(t,n){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set letter size`),this;let r=this.getPlayer();return r?e.__inject__.setLetterSizePlayer(r.id,this.id,t,n):e.__inject__.setLetterSize(this.id,t,n),this}setOutline(t){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set outline model`),this;if(t<0)throw new j(`Invalid outline value`);let n=this.getPlayer();return n?e.__inject__.setOutlinePlayer(n.id,this.id,t):e.__inject__.setOutline(this.id,t),this}setPreviewModel(t){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set preview model`),this;this.setFont(ue.MODEL_PREVIEW);let n=this.getPlayer();return n?e.__inject__.setPreviewModelPlayer(n.id,this.id,t):e.__inject__.setPreviewModel(this.id,t),this}setPreviewRot(t,n,r,i=1){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set preview rot`),this;this.setFont(ue.MODEL_PREVIEW);let a=this.getPlayer();return a?e.__inject__.setPreviewRotPlayer(a.id,this.id,t,n,r,i):e.__inject__.setPreviewRot(this.id,t,n,r,i),this}setPreviewVehColors(t,n){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set preview veh col`),this;this.setFont(ue.MODEL_PREVIEW);let r=this.getPlayer();return r?e.__inject__.setPreviewVehicleColorsPlayer(r.id,this.id,t,n):e.__inject__.setPreviewVehicleColors(this.id,t,n),this}setProportional(t=!0){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set Proportional`),this;let n=this.getPlayer();return n?e.__inject__.setProportionalPlayer(n.id,this.id,t):e.__inject__.setProportional(this.id,t),this}setSelectable(t){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set Selectable`),this;let n=this.getPlayer();return n?e.__inject__.setSelectablePlayer(n.id,this.id,t):e.__inject__.setSelectable(this.id,t),this}setShadow(t){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set shadow`),this;if(t<0)throw new j(`Invalid shadow value`);let n=this.getPlayer();return n?e.__inject__.setShadowPlayer(n.id,this.id,t):e.__inject__.setShadow(this.id,t),this}setString(t,n){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set string`),this;if(t.length===0||t.length>1024)throw new j(`Invalid text length`);let r=this.sourceInfo?.charset||`ISO-8859-1`,i=R.encodeToBuf(R.convertSpecialChar(t),r),a=this.getPlayer();return a?e.__inject__.setStringPlayer(a.id,this.id,i):n?e.__inject__.setStringForPlayer(this.id,n.id,i):e.__inject__.setString(this.id,i),this}setTextSize(t,n){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set TextSize`),this;let r=this.getPlayer();return r?e.__inject__.setTextSizePlayer(r.id,this.id,t,n):e.__inject__.setTextSize(this.id,t,n),this}useBox(t){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set TextSize`),this;let n=this.getPlayer();return n?e.__inject__.useBoxPlayer(n.id,this.id,t):e.__inject__.useBox(this.id,t),this}static beforeCreateWarn(e){throw new j(`Cannot ${e} before create`)}show(t){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`show`),this;let n=this.getPlayer();if(n)e.__inject__.showPlayer(n.id,this.id);else if(t)e.__inject__.showForPlayer(t.id,this.id);else throw new j(`invalid player for show`);return this}hide(t){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`hide`),this;let n=this.getPlayer();if(n)e.__inject__.hidePlayer(n.id,this.id);else if(t)e.__inject__.hideForPlayer(t.id,this.id);else throw new j(`invalid player for hide`);return this}showAll(){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`show`),this;if(!this.getPlayer())return e.__inject__.showForAll(this.id),this;throw new j(`player's textdraw should not be show for all.`)}hideAll(){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`hideAll`),this;if(!this.getPlayer())return e.__inject__.hideForAll(this.id),this;throw new j(`player's textdraw should not be hide for all.`)}isValid(){if(q.skip&&this.id!==c.TEXT_DRAW)return!0;let t=this.getPlayer();return t?e.__inject__.isValidPlayer(t.id,this.id):e.__inject__.isValid(this.id)}isVisibleForPlayer(t){if(this.id===c.TEXT_DRAW)return!1;let n=this.getPlayer();return n?e.__inject__.isVisiblePlayer(n.id,this.id):t?e.__inject__.isVisibleForPlayer(t.id,this.id):!1}getString(){this.id===c.TEXT_DRAW&&e.beforeCreateWarn(`getString`);let t=this.getPlayer();return t?e.__inject__.getStringPlayer(t.id,this.id).str:e.__inject__.getString(this.id).str}setPos(t,n){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`set position`),this;let r=this.getPlayer();return r?e.__inject__.setPosPlayer(r.id,this.id,t,n):e.__inject__.setPos(this.id,t,n),this}getLetterSize(){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`get letter size`);let t=this.getPlayer();return t?e.__inject__.getLetterSizePlayer(t.id,this.id):e.__inject__.getLetterSize(this.id)}getTextSize(){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`get text size`);let t=this.getPlayer();return t?e.__inject__.getTextSizePlayer(t.id,this.id):e.__inject__.getTextSize(this.id)}getPos(){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`get position`);let t=this.getPlayer();return t?e.__inject__.getPosPlayer(t.id,this.id):e.__inject__.getPos(this.id)}getColor(){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`get color`);let t=this.getPlayer();return t?e.__inject__.getColorPlayer(t.id,this.id):e.__inject__.getColor(this.id)}getBoxColor(){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`get box color`);let t=this.getPlayer();return t?e.__inject__.getBoxColorPlayer(t.id,this.id):e.__inject__.getBoxColor(this.id)}getBackgroundColor(){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`get bg color`);let t=this.getPlayer();return t?e.__inject__.getBackgroundColorPlayer(t.id,this.id):e.__inject__.getBackgroundColor(this.id)}getShadow(){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`get shadow`);let t=this.getPlayer();return t?e.__inject__.getShadowPlayer(t.id,this.id):e.__inject__.getShadow(this.id)}getOutline(){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`get outline`);let t=this.getPlayer();return t?e.__inject__.getOutlinePlayer(t.id,this.id):e.__inject__.getOutline(this.id)}getFont(){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`get font`);let t=this.getPlayer();return t?e.__inject__.getFontPlayer(t.id,this.id):e.__inject__.getFont(this.id)}isBox(){if(this.id===c.TEXT_DRAW)return!1;let t=this.getPlayer();return t?e.__inject__.isBoxPlayer(t.id,this.id):e.__inject__.isBox(this.id)}isProportional(){if(this.id===c.TEXT_DRAW)return!1;let t=this.getPlayer();return t?e.__inject__.isProportionalPlayer(t.id,this.id):e.__inject__.isProportional(this.id)}isSelectable(){if(this.id===c.TEXT_DRAW)return!1;let t=this.getPlayer();return t?e.__inject__.isSelectablePlayer(t.id,this.id):e.__inject__.isSelectable(this.id)}getAlignment(){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`get alignment`);let t=this.getPlayer();return t?e.__inject__.getAlignmentPlayer(t.id,this.id):e.__inject__.getAlignment(this.id)}getPreviewModel(){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`get preview model`);let t=this.getPlayer();return t?e.__inject__.getPreviewModelPlayer(t.id,this.id):e.__inject__.getPreviewModel(this.id)}getPreviewRot(){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`get preview rotation`);let t=this.getPlayer();return t?e.__inject__.getPreviewRotPlayer(t.id,this.id):e.__inject__.getPreviewRot(this.id)}getPreviewVehColors(){if(this.id===c.TEXT_DRAW)return e.beforeCreateWarn(`get preview vel colors`);let t=this.getPlayer();return t?e.__inject__.getPreviewVehicleColorsPlayer(t.id,this.id):e.__inject__.getPreviewVehicleColors(this.id)}isGlobal(){return!this.getPlayer()}isPlayer(){return!this.isGlobal()}getPlayer(){return this._player?this._player:this.sourceInfo&&this.sourceInfo.player?this.sourceInfo.player:null}getPlayerId(){let e=this.getPlayer();return e?e.id:c.PLAYER_ID}static getInstance(e,t){if(!t)return Qv.get(e);if(t.id!==c.PLAYER_ID)return H.get(t)?.get(e)}static getInstances(e){return e?e.id===c.PLAYER_ID?[]:[...H.get(e)?.values()||[]]:[...Qv.values()]}static getPlayersInstances(){return Array.from(H.entries()).map(([e,t])=>[e,Array.from(t.values())])}static __inject__={create:nh,createPlayer:Kh,destroy:rh,destroyPlayer:qh,setFont:ph,setFontPlayer:rg,setColor:sh,setColorPlayer:Zh,setBoxColor:lh,setBoxColorPlayer:$h,setBackgroundColor:fh,setBackgroundColorPlayer:ng,setAlignment:oh,setAlignmentPlayer:Xh,setLetterSize:ih,setLetterSizePlayer:Jh,setOutline:dh,setOutlinePlayer:tg,setPreviewModel:xh,setPreviewModelPlayer:lg,setPreviewRot:Sh,setPreviewRotPlayer:ug,setPreviewVehicleColors:Ch,setPreviewVehicleColorsPlayer:dg,setProportional:mh,setProportionalPlayer:ig,setSelectable:hh,setSelectablePlayer:ag,setShadow:uh,setShadowPlayer:eg,setStringPlayer:cg,setStringForPlayer:th,setString:bh,setTextSize:ah,setTextSizePlayer:Yh,useBoxPlayer:Qh,useBox:ch,showPlayer:og,showForPlayer:gh,hidePlayer:sg,hideForPlayer:_h,showForAll:vh,hideForAll:yh,isValidPlayer:Eh,isValid:Fm,isVisiblePlayer:Dh,isVisibleForPlayer:Im,getStringPlayer:Oh,getString:Lm,setPosPlayer:kh,setPos:Rm,getLetterSizePlayer:Ah,getLetterSize:zm,getTextSizePlayer:jh,getTextSize:Bm,getPosPlayer:Mh,getPos:Vm,getColorPlayer:Nh,getColor:Hm,getBoxColorPlayer:Ph,getBoxColor:Um,getBackgroundColorPlayer:Fh,getBackgroundColor:Wm,getShadowPlayer:Ih,getShadow:Gm,getOutlinePlayer:Lh,getOutline:Km,getFontPlayer:Rh,getFont:qm,isBoxPlayer:zh,isBox:Jm,isProportionalPlayer:Bh,isProportional:Ym,isSelectablePlayer:Vh,isSelectable:Xm,getAlignmentPlayer:Hh,getAlignment:Zm,getPreviewModelPlayer:Uh,getPreviewModel:Qm,getPreviewRotPlayer:Wh,getPreviewRot:$m,getPreviewVehicleColors:eh,getPreviewVehicleColorsPlayer:Gh}};Ab.onDisconnect(({player:e,next:t})=>(H.has(e)&&(PS.getInstances(e).forEach(e=>{e.isValid()&&e.destroy()}),H.delete(e)),t())),K.onExit(({next:e})=>(PS.getInstances().forEach(e=>e.destroy()),PS.getPlayersInstances().map(([,e])=>e).flat().forEach(e=>e.destroy()),Qv.clear(),H.clear(),e()));const[FS]=L({name:`OnPlayerClickTextDraw`,identifier:`ii`,defaultValue:!1,beforeEach(e,t){return{player:X.getInstance(e),textDraw:t===c.TEXT_DRAW?t:PS.getInstance(t)}}}),[IS]=L({name:`OnPlayerClickPlayerTextDraw`,identifier:`ii`,defaultValue:!1,beforeEach(e,t){let n=X.getInstance(e);return{player:n,textDraw:t===c.TEXT_DRAW?t:PS.getInstance(t,n)}}}),LS=Object.freeze({onPlayerClickGlobal:FS,onPlayerClickPlayer:IS});Ab.onDisconnect(({player:e,next:t})=>(U.has(e)&&(Y.getInstances(e).forEach(e=>{e.isValid()&&e.destroy()}),U.delete(e)),t())),K.onExit(({next:e})=>(Y.getInstances().forEach(e=>e.destroy()),Y.getPlayersInstances().map(([,e])=>e).flat().forEach(e=>e.destroy()),sy.clear(),U.clear(),e()));const[RS]=L({name:`OnPlayerSelectObject`,identifier:`iiiifff`,defaultValue:!1,beforeEach(e,t,n,r,i,a,o){let s=X.getInstance(e);return{player:s,type:t,isPlayerObject:t!==_.UNKNOWN&&t===_.PLAYER_OBJECT,isGlobal:t!==_.UNKNOWN&&t===_.GLOBAL_OBJECT,objectMp:t===_.GLOBAL_OBJECT?Y.getInstance(n):Y.getInstance(n,s),modelId:r,fX:i,fY:a,fZ:o}}}),[zS]=L({name:`OnPlayerEditObject`,identifier:`iiiiffffff`,defaultValue:!1,beforeEach(e,t,n,r,i,a,o,s,c,l){let u=X.getInstance(e),d=t===1;return{player:u,isPlayerObject:d,isGlobal:!d,objectMp:d?Y.getInstance(n,u):Y.getInstance(n),response:r,fX:i,fY:a,fZ:o,fRotX:s,fRotY:c,fRotZ:l}}}),[BS]=L({name:`OnPlayerEditAttachedObject`,identifier:`iiiiifffffffff`,defaultValue:!1,beforeEach(e,t,n,r,i,a,o,s,c,l,u,d,f,p){return{player:X.getInstance(e),response:t,index:n,modelId:r,boneId:i,fOffsetX:a,fOffsetY:o,fOffsetZ:s,fRotX:c,fRotY:l,fRotZ:u,fScaleX:d,fScaleY:f,fScaleZ:p}}}),[VS]=L({name:`OnObjectMoved`,identifier:`i`,beforeEach(e){return{objectMp:Y.getInstance(e)}}}),[HS]=L({name:`OnPlayerObjectMoved`,identifier:`ii`,beforeEach(e,t){let n=X.getInstance(e);return{player:n,playerObject:Y.getInstance(t,n)}}}),US=Object.freeze({onPlayerSelect:RS,onPlayerEdit:zS,onPlayerEditAttached:BS,onGlobalMoved:VS,onPlayerMoved:HS});var WS=class e{_id=c.ACTOR_ID;sourceInfo=null;get id(){return this._id}constructor(t){if(typeof t==`number`){if(t===c.ACTOR_ID)throw new w(`Invalid id`);let n=e.getInstance(t);if(n)return n;this._id=t}else this.sourceInfo=t}create(){if(this._id!==c.ACTOR_ID)throw new w(`Cannot be created twice`);let{skin:t,x:n,y:r,z:i,rotation:a}=this.sourceInfo;if(this._id=e.__inject__.create(t,n,r,i,a),this._id===c.ACTOR_ID||e.getInstances().length===u.MAX_ACTORS)throw new w(`Cannot create actor`);return cy.set(this._id,this),this}destroy(){if(this._id===c.ACTOR_ID)throw new w(`Cannot before create`);return q.skip||e.__inject__.destroy(this._id),cy.delete(this._id),this._id=c.ACTOR_ID,this}isStreamIn(t){return this._id===c.ACTOR_ID?!1:e.__inject__.isStreamedIn(this.id,t.id)}setVirtualWorld(t){return this._id===c.ACTOR_ID?!1:e.__inject__.setVirtualWorld(this.id,t)}getVirtualWorld(){return this._id===c.ACTOR_ID?0:e.__inject__.getVirtualWorld(this.id)}applyAnimation(t,n,r,i,a,o,s,l){return this._id===c.ACTOR_ID?!1:e.__inject__.applyAnimation(this.id,t,n,r,i,a,o,s,l)}clearAnimations(){return this._id===c.ACTOR_ID?!1:e.__inject__.clearAnimations(this.id)}setPos(t,n,r){return this._id===c.ACTOR_ID?!1:e.__inject__.setPos(this.id,t,n,r)}getPos(){if(this._id===c.ACTOR_ID)throw new w(`Cannot getPos before create`);return e.__inject__.getPos(this.id)}setFacingAngle(t){return this._id===c.ACTOR_ID?!1:e.__inject__.setFacingAngle(this.id,t)}getFacingAngle(){if(this._id===c.ACTOR_ID)throw new w(`Cannot getFacingAngle before create`);return e.__inject__.getFacingAngle(this.id)}setHealth(t){return this._id===c.ACTOR_ID?!1:e.__inject__.setHealth(this.id,t)}getHealth(){if(this._id===c.ACTOR_ID)throw new w(`Cannot getHealth before create`);return e.__inject__.getHealth(this.id)}setInvulnerable(t){return this._id===c.ACTOR_ID?!1:e.__inject__.setInvulnerable(this.id,t)}isInvulnerable(){return this._id===c.ACTOR_ID?!1:e.__inject__.isInvulnerable(this.id)}isValid(){return e.isValid(this._id)}setSkin(t){return this._id===c.ACTOR_ID?!1:e.__inject__.setSkin(this.id,t)}getSkin(){if(this._id===c.ACTOR_ID)throw new w(`Cannot getSkin before create`);return this.sourceInfo?this.sourceInfo.skin:e.__inject__.getSkin(this.id)}getAnimation(){if(this._id===c.ACTOR_ID)throw new w(`Cannot getAnimation before create`);return e.__inject__.getAnimation(this.id)}getSpawnInfo(){if(this._id===c.ACTOR_ID)throw new w(`Cannot getSpawnInfo before create`);return e.__inject__.getSpawnInfo(this.id)}static isValid(t){return e.__inject__.isValid(t)}static getInstance(e){return cy.get(e)}static getInstances(){return[...cy.values()]}static __inject__={create:Vc,destroy:Hc,applyAnimation:Kc,clearAnimations:qc,getAnimation:Bc,getFacingAngle:Zc,getHealth:$c,getPos:Yc,getSkin:Lc,getSpawnInfo:zc,getVirtualWorld:Gc,isInvulnerable:tl,isStreamedIn:Uc,isValid:nl,setFacingAngle:Xc,setHealth:Qc,setInvulnerable:el,setPos:Jc,setSkin:Rc,setVirtualWorld:Wc}};K.onExit(({next:e})=>(WS.getInstances().forEach(e=>e.destroy()),cy.clear(),e()));const[GS]=L({name:`OnPlayerGiveDamageActor`,identifier:`iifii`,defaultValue:!1,beforeEach(e,t,n,r,i){return{player:X.getInstance(e),actor:WS.getInstance(t),amount:n,weapon:r,bodyPart:i}}}),[KS]=L({name:`OnActorStreamIn`,identifier:`ii`,beforeEach(e,t){return{actor:WS.getInstance(e),player:X.getInstance(t)}}}),[qS]=L({name:`OnActorStreamOut`,identifier:`ii`,beforeEach(e,t){return{actor:WS.getInstance(e),player:X.getInstance(t)}}}),JS=Object.freeze({onPlayerGiveDamage:GS,onStreamIn:KS,onStreamOut:qS});var YS=class e{static set(t,n,r,i,a){return e.__inject__.set(t.id,n,r,i,a)}static disable(t){return e.__inject__.disable(t.id)}static isPlayerIn(t){return e.__inject__.isPlayerIn(t.id)}static isActive(t){return e.__inject__.isActive(t.id)}static get(t){return e.__inject__.get(t.id)}static __inject__={disable:dp,get:_p,isActive:gp,isPlayerIn:mp,set:up}};const[XS]=L({name:`OnPlayerEnterCheckpoint`,identifier:`i`,beforeEach(e){return{player:X.getInstance(e)}}}),[ZS]=L({name:`OnPlayerLeaveCheckpoint`,identifier:`i`,beforeEach(e){return{player:X.getInstance(e)}}}),QS=Object.freeze({onPlayerEnter:XS,onPlayerLeave:ZS});var $S=class e{static set(t,n,r,i,a,o,s,c,l){return e.__inject__.set(t.id,n,r,i,a,o,s,c,l)}static disable(t){return e.__inject__.disable(t.id)}static isPlayerIn(t){return e.__inject__.isPlayerIn(t.id)}static isActive(t){return e.__inject__.isActive(t.id)}static get(t){return e.__inject__.get(t.id)}static __inject__={disable:pp,get:yp,isActive:vp,isPlayerIn:hp,set:fp}};const[eC]=L({name:`OnPlayerEnterRaceCheckpoint`,identifier:`i`,beforeEach(e){return{player:X.getInstance(e)}}}),[tC]=L({name:`OnPlayerLeaveRaceCheckpoint`,identifier:`i`,beforeEach(e){return{player:X.getInstance(e)}}}),nC=Object.freeze({onPlayerEnter:eC,onPlayerLeave:tC});var rC=class e{sourceInfo=null;_player=null;_id=c.PICKUP_ID;get id(){return this._id}constructor(t,n){if(typeof t==`number`){if(t===c.PICKUP_ID)throw new A(`Invalid id`);n&&(this._player=n);let r=e.getInstance(t,n);if(r)return r;this._id=t,this.isGlobal()?ly.set(this._id,this):n&&(W.has(n)||W.set(n,new Map),W.get(this.getPlayer()).set(this.id,this))}else this.sourceInfo=t,this._player=null}create(){if(!this.sourceInfo)throw new A(`Cannot create with only id`);if(this.id!==c.PICKUP_ID)throw new A(`Cannot be created twice`);let{model:t,type:n,virtualWorld:r,x:i,y:a,z:o,isStatic:s}=this.sourceInfo,l=this.getPlayer();if(s){if(l)throw new A(`Cannot create static pickup for player`);e.__inject__.addStatic(t,n,i,a,o,r)}else if(l){if(this._id=e.__inject__.createPlayer(l.id,t,n,i,a,o,r),l&&e.getInstances(l).length===u.MAX_PICKUPS||this._id===c.PICKUP_ID)throw new A(`Cannot create player pickup`);W.has(l)||W.set(l,new Map),W.get(l).set(this.id,this)}else{if(this._id=e.__inject__.create(t,n,i,a,o,r),e.getInstances().length===u.MAX_PICKUPS||this._id===c.PICKUP_ID)throw new A(`Cannot create pickup`);ly.set(this.id,this)}return this}destroy(){if(this.sourceInfo&&this.sourceInfo.isStatic)throw new A(`Cannot destroy static pickup`);if(this.id===c.PICKUP_ID)throw new A(`Cannot destroy before create`);let t=this.getPlayer();if(!t)q.skip||e.__inject__.destroy(this.id),ly.delete(this.id);else if(q.skip||e.__inject__.destroyPlayer(t.id,this.id),W.has(t)){let e=W.get(t);e.delete(this.id),e.size||W.delete(t)}this._id=c.PICKUP_ID}isGlobal(){return!(this.sourceInfo?this.sourceInfo.player:this._player)}isPlayer(){return!this.isGlobal()}getPlayer(){return this._player?this._player:this.sourceInfo&&this.sourceInfo.player?this.sourceInfo.player:null}getPlayerId(){let e=this.getPlayer();return e?e.id:c.PLAYER_ID}isValid(){if(q.skip&&this.id!==c.PICKUP_ID)return!0;if(this.id===c.PICKUP_ID)return!1;let t=this.getPlayer();return t?e.isValidPlayer(t.id,this.id):e.isValidGlobal(this.id)}isStreamedIn(t){if(this.id===c.PICKUP_ID)return!1;let n=this.getPlayer();return n?e.__inject__.isStreamedInPlayer(n.id,this.id):e.__inject__.isStreamedIn(t.id,this.id)}getPos(){let t=this.getPlayer();return t?e.__inject__.getPosPlayer(t.id,this.id):e.__inject__.getPos(this.id)}getModel(){if(this.id===c.PICKUP_ID)return 0;let t=this.getPlayer();return t?e.__inject__.getModelPlayer(t.id,this.id):e.__inject__.getModel(this.id)}getType(){if(this.id===c.PICKUP_ID)return 0;let t=this.getPlayer();return t?e.__inject__.getTypePlayer(t.id,this.id):e.__inject__.getType(this.id)}getVirtualWorld(){if(this.id===c.PICKUP_ID)return 0;let t=this.getPlayer();return t?e.__inject__.getVirtualWorldPlayer(t.id,this.id):e.__inject__.getVirtualWorld(this.id)}setPos(t,n,r,i){if(this.id===c.PICKUP_ID)return!1;let a=this.getPlayer();return a?e.__inject__.setPosPlayer(a.id,this.id,t,n,r,i):e.__inject__.setPos(this.id,t,n,r,i)}setModel(t,n=!0){if(this.id===c.PICKUP_ID)return!1;let r=this.getPlayer();return r?e.__inject__.setModelPlayer(r.id,this.id,t,n):e.__inject__.setModel(this.id,t,n)}setType(t,n=!0){if(this.id===c.PICKUP_ID)return!1;let r=this.getPlayer();return r?e.__inject__.setTypePlayer(r.id,this.id,t,n):e.__inject__.setType(this.id,t,n)}setVirtualWorld(t){if(this.id===c.PICKUP_ID)return!1;let n=this.getPlayer();return n?e.__inject__.setVirtualWorldPlayer(n.id,this.id,t):e.__inject__.setVirtualWorld(this.id,t)}showForPlayer(t){if(this.id===c.PICKUP_ID)return!1;if(this.getPlayer())throw new A(`Cannot show for player pickup`);return e.__inject__.showForPlayer(t.id,this.id)}hideForPlayer(t){if(this.id===c.PICKUP_ID)return!1;if(this.getPlayer())throw new A(`Cannot hide for player pickup`);return e.__inject__.hideForPlayer(t.id,this.id)}isHiddenForPlayer(t){if(this.id===c.PICKUP_ID)return!1;if(this.isPlayer())throw new A(`Cannot isHiddenForPlayer for player pickup`);return e.__inject__.isHiddenForPlayer(t.id,this.id)}static isValidPlayer(t,n){return e.__inject__.isValidPlayer(t,n)}static isValidGlobal(t){return e.__inject__.isValidGlobal(t)}static getInstance(e,t){if(!t)return ly.get(e);if(t.id!==c.PLAYER_ID)return W.get(t)?.get(e)}static getInstances(e){return e?e.id===c.PLAYER_ID?[]:[...W.get(e)?.values()||[]]:[...ly.values()]}static getPlayersInstances(){return Array.from(W.entries()).map(([e,t])=>[e,Array.from(t.values())])}static __inject__={create:q_,addStatic:K_,destroy:J_,isStreamedIn:P_,getPos:F_,getModel:I_,getType:L_,getVirtualWorld:R_,setPos:z_,setModel:B_,setType:V_,setVirtualWorld:H_,showForPlayer:U_,hideForPlayer:W_,isHiddenForPlayer:G_,isValidGlobal:N_,createPlayer:Y_,destroyPlayer:X_,isStreamedInPlayer:Q_,getPosPlayer:$_,getModelPlayer:iv,getTypePlayer:av,getVirtualWorldPlayer:ov,setPosPlayer:ev,setModelPlayer:tv,setTypePlayer:nv,setVirtualWorldPlayer:rv,isValidPlayer:Z_}};Ab.onDisconnect(({player:e,next:t})=>(W.has(e)&&(rC.getInstances(e).forEach(e=>{e.isValid()&&e.destroy()}),W.delete(e)),t())),K.onExit(({next:e})=>(rC.getInstances().forEach(e=>e.destroy()),rC.getPlayersInstances().map(([,e])=>e).flat().forEach(e=>e.destroy()),ly.clear(),W.clear(),e()));const[iC]=L({name:`OnPlayerPickUpPickup`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),pickup:rC.getInstance(t)}}}),[aC]=L({name:`OnPickupStreamIn`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),pickup:rC.getInstance(t)}}}),[oC]=L({name:`OnPickupStreamOut`,identifier:`ii`,beforeEach(e,t){return{player:X.getInstance(e),pickup:rC.getInstance(t)}}}),[sC]=L({name:`OnPlayerPickUpPlayerPickup`,identifier:`ii`,beforeEach(e,t){let n=X.getInstance(e);return{player:n,pickup:rC.getInstance(t,n)}}}),[cC]=L({name:`OnPlayerPickupStreamIn`,identifier:`ii`,beforeEach(e,t){let n=X.getInstance(e);return{player:n,pickup:rC.getInstance(t,n)}}}),[lC]=L({name:`OnPlayerPickupStreamOut`,identifier:`ii`,beforeEach(e,t){let n=X.getInstance(e);return{player:n,pickup:rC.getInstance(t,n)}}}),uC=Object.freeze({onPlayerPickUpGlobal:iC,onStreamInGlobal:aC,onStreamOutGlobal:oC,onPlayerPickupPlayer:sC,onStreamInPlayer:cC,onStreamOutPlayer:lC});var dC=class e{sourceInfo=null;_id=c._3DTEXT_ID;_player=null;get id(){return this._id}constructor(t,n){if(typeof t==`number`){if(t===c.PLAYER_3DTEXT_ID)throw new Jr(`Invalid id`);n&&(this._player=n);let r=e.getInstance(t,n);if(r)return r;this._id=t,this.isGlobal()?uy.set(this._id,this):n&&(G.has(n)||G.set(n,new Map),G.get(this.getPlayer()).set(this.id,this))}else this.sourceInfo=t,this._player=null}create(){if(!this.sourceInfo)throw new Jr(`Cannot create with only id`);if(this.id!==c._3DTEXT_ID)throw new Jr(`Cannot create again`);let{charset:t=`utf8`,text:n,color:r,x:i,y:a,z:o,drawDistance:s,virtualWorld:l,testLOS:d,attachedPlayer:f,attachedVehicle:p}=this.sourceInfo;if(this.isGlobal()){if(this._id=e.__inject__.create(t,n,r,i,a,o,s,l,d),this.id===c._3DTEXT_ID||e.getInstances().length===u.MAX_3DTEXT_GLOBAL)throw new Jr(`Cannot create textLabel`);return uy.set(this._id,this),this}let m=this.getPlayerId();if(m===c.PLAYER_ID)return this;let h=this.getPlayer();if(this._id=e.__inject__.createPlayer(t,m,n,r,i,a,o,s,f===void 0?c.PLAYER_ID:f.id,p===void 0?c.VEHICLE_ID:p.id,d),this.id===c._3DTEXT_ID||e.getInstances(h).length===u.MAX_3DTEXT_PLAYER)throw new Jr(`Cannot create playerTextLabel`);return G.has(h)||G.set(h,new Map),G.get(this.getPlayer()).set(this.id,this),this}destroy(){if(this.id===c._3DTEXT_ID)throw new Jr(`Cannot destroy the textLabel before create`);if(this.isGlobal())q.skip||e.__inject__.delete(this.id),uy.delete(this.id);else{let t=this.getPlayerId();if(t===c.PLAYER_ID)return this;let n=this.getPlayer();if(q.skip||e.__inject__.deletePlayer(t,this.id),G.has(n)){let e=G.get(n);e.delete(this.id),e.size===0&&G.delete(n)}}return this._id=c._3DTEXT_ID,this}isGlobal(){return!(this.sourceInfo?this.sourceInfo.player:this._player)}isPlayer(){return!this.isGlobal()}getPlayer(){return this._player?this._player:this.sourceInfo&&this.sourceInfo.player?this.sourceInfo.player:null}getPlayerId(){let e=this.getPlayer();return e?e.id:c.PLAYER_ID}isValid(){return q.skip&&this.id!==c._3DTEXT_ID?!0:this.isGlobal()?e.isValid(this.id):e.isValid(this.id,this.getPlayerId())}attachToPlayer(t,n,r,i){if(this.id===c._3DTEXT_ID)return!1;if(!this.isGlobal())throw new Jr(`Cannot attach to player, textLabel is not global`);return e.__inject__.attachToPlayer(this.id,t.id,n,r,i)}attachToVehicle(t,n,r,i){if(this.id===c._3DTEXT_ID)return!1;if(!this.isGlobal())throw new Jr(`Cannot attach to vehicle, textLabel is not global`);return e.__inject__.attachToVehicle(this.id,t.id,n,r,i)}updateText(t,n,r=`utf8`){return this.id===c._3DTEXT_ID?!1:this.isGlobal()?e.__inject__.updateText(r,this.id,t,n):e.__inject__.updatePlayerText(r,this.getPlayerId(),this.id,t,n)}isStreamedIn(t){if(this.id===c._3DTEXT_ID)return!1;if(!this.isGlobal())throw new Jr(`Cannot check stream in, textLabel is not global`);return e.__inject__.isStreamedIn(this.id,t.id)}getText(t=this.sourceInfo?.charset||`utf8`){return this.isGlobal()?e.__inject__.getText(t,this.id):e.__inject__.getPlayerText(t,this.getPlayerId(),this.id)}getColor(){return this.isGlobal()?e.__inject__.getColor(this.id):e.__inject__.getPlayerColor(this.getPlayerId(),this.id)}getPos(){return this.isGlobal()?e.__inject__.getPos(this.id):e.__inject__.getPlayerPos(this.getPlayerId(),this.id)}setDrawDistance(t){return this.id===c._3DTEXT_ID?!1:this.isGlobal()?e.__inject__.setDrawDistance(this.id,t):e.__inject__.setPlayerDrawDistance(this.getPlayerId(),this.id,t)}getDrawDistance(){return this.isGlobal()?e.__inject__.getDrawDistance(this.id):e.__inject__.getPlayerDrawDistance(this.getPlayerId(),this.id)}getLOS(){return this.id===c._3DTEXT_ID?!1:this.isGlobal()?e.__inject__.getLOS(this.id):e.__inject__.getPlayerLOS(this.getPlayerId(),this.id)}setLOS(t){return this.id===c._3DTEXT_ID?!1:this.isGlobal()?e.__inject__.setLOS(this.id,t):e.__inject__.setPlayerLOS(this.getPlayerId(),this.id,t)}getVirtualWorld(){return this.id===c._3DTEXT_ID?0:this.isGlobal()?e.__inject__.getVirtualWorld(this.id):e.__inject__.getPlayerVirtualWorld(this.getPlayerId(),this.id)}setVirtualWorld(t){return this.id===c._3DTEXT_ID?!1:this.isGlobal()?e.__inject__.setVirtualWorld(this.id,t):e.__inject__.setPlayerVirtualWorld(this.getPlayerId(),this.id,t)}getAttachedData(){return this.isGlobal()?e.__inject__.getAttachedData(this.id):e.__inject__.getPlayerAttachedData(this.getPlayerId(),this.id)}static isValid(t,n){return n===c.PLAYER_ID?!1:n===void 0?e.__inject__.isValid(t):e.__inject__.isValidPlayer(n,t)}static getInstance(e,t){if(!t)return uy.get(e);if(t.id!==c.PLAYER_ID)return G.get(t)?.get(e)}static getInstances(e){return e?e.id===c.PLAYER_ID?[]:[...G.get(e)?.values()||[]]:[...uy.values()]}static getPlayersInstances(){return Array.from(G.entries()).map(([e,t])=>[e,Array.from(t.values())])}static __inject__={create:Nv,createPlayer:Pv,getText:Lv,getPlayerText:Rv,updateText:Fv,updatePlayerText:Iv,delete:Up,attachToPlayer:Wp,attachToVehicle:Gp,isStreamedIn:Np,getColor:Pp,getPos:Fp,setDrawDistance:Ip,getDrawDistance:Lp,getLOS:Rp,setLOS:zp,getVirtualWorld:Vp,setVirtualWorld:Bp,getAttachedData:Hp,isValid:Mp,deletePlayer:nm,getPlayerColor:qp,getPlayerPos:Jp,setPlayerDrawDistance:Yp,getPlayerDrawDistance:Xp,getPlayerLOS:Zp,setPlayerLOS:Qp,getPlayerVirtualWorld:$p,setPlayerVirtualWorld:em,getPlayerAttachedData:tm,isValidPlayer:Kp}};Ab.onDisconnect(({player:e,next:t})=>(G.has(e)&&(dC.getInstances(e).forEach(e=>{e.isValid()&&e.destroy()}),G.delete(e)),t())),K.onExit(({next:e})=>(dC.getInstances().forEach(e=>e.destroy()),dC.getPlayersInstances().map(([,e])=>e).flat().forEach(e=>e.destroy()),uy.clear(),G.clear(),e()));function fC(e,t){return(e&t)===t}function pC(e,t,n){return(e&n)===n&&(t&n)!==n}function mC(e,t){return!!(e&t)}function hC(e,t,n){return(e&n)!==n&&(t&n)===n}function gC(e){let t=new Set,n=e.prototype,r=Object.getOwnPropertyNames(n).filter(e=>typeof n[e]==`function`&&e!==`constructor`).reduce((e,t)=>(e[t]=n[t],e),{});function i(r,i){if(t.has(r))throw new Wr(`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(n,r)!=`function`)throw new Wr(`Invalid method: ${String(r)}`);return Reflect.set(n,r,i),t.add(r),i}return[r,i]}function _C(e,t){return new Promise((n,r)=>{if(!e.isConnected()){r(new Ur(e.id));return}let i=Qy(({player:t,next:n})=>{if(t.id===e.id){let e=n();return r(new Ur(t.id)),e}return n()});t().then(n).catch(r).finally(i)})}export{WS as Actor,JS as ActorEvent,w as ActorException,r as ArtworkEnum,oe as BodyPartsEnum,se as BoneIdsEnum,_e as BulletHitTypesEnum,y as CameraCutStylesEnum,re as CameraModesEnum,fe as CarModTypeEnum,QS as CheckPointEvent,YS as Checkpoint,i as ClickSourcesEnum,Br as ClientCheckException,s as ConnectionStatusEnum,Vr as CoreException,ye as DamageDeathReasonEnum,Xy as Dialog,Hr as DialogException,a as DialogStylesEnum,Ur as DisconnectException,Rx as Dynamic3DTextLabel,Ux as Dynamic3DTextLabelEvent,Nx as DynamicActor,Lx as DynamicActorEvent,M as DynamicActorException,Wx as DynamicArea,Zx as DynamicAreaEvent,N as DynamicAreaException,wx as DynamicCheckPointEvent,Zr as DynamicCheckPointException,_x as DynamicCheckpoint,ix as DynamicMapIcon,lx as DynamicMapIconEvent,Qr as DynamicMapIconException,Jb as DynamicObject,rx as DynamicObjectEvent,P as DynamicObjectException,ux as DynamicPickup,gx as DynamicPickupEvent,$r as DynamicPickupException,Tx as DynamicRaceCP,Mx as DynamicRaceCPEvent,ei as DynamicRaceCpException,F as DynamicTextLabelException,Ce as E_STREAMER,o as EditResponseTypesEnum,ne as FightingStylesEnum,ce as ForceSyncEnum,K as GameMode,T as GameModeException,xS as GameText,ES as GangZone,NS as GangZoneEvent,E as GangZoneException,Wr as HookException,R as I18n,Gr as I18nException,c as InvalidEnum,l as KeysEnum,me as LandingGearStateEnum,u as LimitsEnum,Vt as MapIconStyles,v as MapIconStylesEnum,d as MarkerModesEnum,we as MaterialTextAlign,Te as MaterialTextSizes,SS as Menu,TS as MenuEvent,D as MenuException,h as NPCEntityCheckEnum,g as NPCMoveSpeedEnum,m as NPCMoveTypeEnum,f as NPCPlaybackEnum,p as NPCRecordStatusEnum,bS as NetStats,Kr as NetStatsException,$ as Npc,yS as NpcEvent,O as NpcException,$x as NpcNode,eS as NpcPath,Qx as NpcRecord,te as ObjectMaterialAlignmentEnum,ee as ObjectMaterialTextSizeEnum,Y as ObjectMp,US as ObjectMpEvent,k as ObjectMpException,uC as PickUpEvent,rC as Pickup,A as PickupException,X as Player,Ab as PlayerEvent,qr as PlayerException,ae as PlayerStateEnum,$S as RaceCheckpoint,nC as RaceCpEvent,be as RecordTypesEnum,_ as SelectObjectTypesEnum,le as SpecialActionsEnum,ie as SpectateModesEnum,Q as Streamer,xe as StreamerAreaTypes,x as StreamerDistances,Xr as StreamerException,S as StreamerItemTypes,C as StreamerMiscellaneous,Se as StreamerObjectTypes,PS as TextDraw,de as TextDrawAlignEnum,LS as TextDrawEvent,j as TextDrawException,ue as TextDrawFontsEnum,dC as TextLabel,Jr as TextLabelException,J as Vehicle,Wb as VehicleEvent,Yr as VehicleException,pe as VehicleModelInfoEnum,b as VehicleParamsEnum,he as WeaponEnum,ge as WeaponSkillsEnum,ve as WeaponStatesEnum,sv as animateLib,L as defineEvent,gC as defineHooks,uv as getAnimateDurationByLibName,fC as isHolding,pC as isPressed,mC as isPressing,hC as isReleased,cv as isValidAnimateLib,lv as isValidAnimateName,z as rgba,_C as stopWhenDisconnect,ii as useTrigger,ai as withTriggerOptions};