import io
import requests
import json
import os
from tempfile import TemporaryDirectory
from typing import TypedDict, Literal, Any, Union
from copy import deepcopy

ApiMemoryCategory = Literal["Behavior", "Data", "Transform", "State", "Appearance", "Derived Data", "Derived World Data", "Tuning", "Debug", "Shape", "Goals", "Thrust", "Turn", "Camera", "Image", "Attachments", "AlignOrientation", "TargetOrientation", "Compliance", "AlignmentMode", "AlignPosition", "Torque", "BallSocket", "Friction", "Limits", "TwistLimits", "Hinge", "Servo", "Motor", "Derived", "LineForce", "Line", "Plane", "Mode", "Vector", "Rod", "Rope", "Winch", "Slider", "Cylinder", "AngularServo", "AngularLimits", "AngularMotor", "Spring", "Universal", "VectorForce", "Axes", "Movement", "Balance", "Orientation", "Input", "Performance", "Errors", "Profile", "Benchmarking", "Control", "Mouth", "Brows", "Eyes", "Jaw", "Tongue", "Video", "Localization", "Debugging", "Selection", "Text", "Scrolling", "Sizing", "Jump Settings", "Game", "Accessories", "Scale", "Animation", "Body Parts", "Clothes", "Body Colors", "Animatable", "Exposure", "Fog", "Material Overrides", "Material Pack", "Material", "Proxy Settings", "Diagnostics", "Advanced", "Parts", "Pivot", "Part", "Assembly", "Surface Inputs", "Surface", "Collision", "Teams", "Forcefield", "Networking", "Streaming", "Link", "Motion", "Particles", "Emission", "Flipbook", "EmitterShape", "Display", "Team", "Reflection", "General", "Cache", "RenderingTest", "Settings", "Output", "JobInfo", "Asset", "Playback", "Regions", "Emitter", "Routing", "Character", "Mobile", "Character Jump Settings", "Controls", "Script Editor Colors", "Tools", "Script Editor", "Auto-Recovery", "Lua Debugger", "Directories", "Browsing", "Primary Part", "Audio", "Undo", "Explorer", "Visualization", "Configuration", "Physics", "Results"]
ApiPropertyTag = Literal["ReadOnly", "NotReplicated", "Hidden", "Deprecated", "NotBrowsable", "CustomLuaState", "CanYield", "NotScriptable", "Yields", "NoYield"]
ApiClassTag = Literal["NotCreatable", "NotBrowsable", "Deprecated", "Service", "NotReplicated", "PlayerReplicated", "Settings", "UserSettings"]
ApiPropertyCategory = Literal["Behavior", "Data", "Transform", "State", "Appearance", "Derived Data", "Derived World Data", "Tuning", "Debug", "Shape", "Goals", "Thrust", "Turn", "Camera", "Image", "Attachments", "AlignOrientation", "TargetOrientation", "Compliance", "AlignmentMode", "AlignPosition", "Torque", "BallSocket", "Friction", "Limits", "TwistLimits", "Hinge", "Servo", "Motor", "Derived", "LineForce", "Line", "Plane", "Mode", "Vector", "Rod", "Rope", "Winch", "Slider", "Cylinder", "AngularServo", "AngularLimits", "AngularMotor", "Spring", "Universal", "VectorForce", "Axes", "Movement", "Balance", "Orientation", "Input", "Performance", "Errors", "Profile", "Benchmarking", "Control", "Mouth", "Brows", "Eyes", "Jaw", "Tongue", "Video", "Localization", "Debugging", "Selection", "Text", "Scrolling", "Sizing", "Jump Settings", "Game", "Accessories", "Scale", "Animation", "Body Parts", "Clothes", "Body Colors", "Animatable", "Exposure", "Fog", "Material Overrides", "Material Pack", "Material", "Proxy Settings", "Diagnostics", "Advanced", "Parts", "Pivot", "Part", "Assembly", "Surface Inputs", "Surface", "Collision", "Teams", "Forcefield", "Networking", "Streaming", "Link", "Motion", "Particles", "Emission", "Flipbook", "EmitterShape", "Display", "Team", "Reflection", "General", "Cache", "RenderingTest", "Settings", "Output", "JobInfo", "Asset", "Playback", "Regions", "Emitter", "Routing", "Character", "Mobile", "Character Jump Settings", "Controls", "Script Editor Colors", "Tools", "Script Editor", "Auto-Recovery", "Lua Debugger", "Directories", "Browsing", "Primary Part", "Audio", "Undo", "Explorer", "Visualization", "Configuration", "Physics", "Results"]
ApiMemberType = Literal["Property", "Function", "Event", "Callback"]
ApiThreadSafety = Literal["ReadSafe", "Unsafe", "Safe", "LocalSafe"]
ApiValueCategory = Literal["Primitive", "Class", "DataType", "Enum"]
ApiValueTypeName = Literal["bool", "string", "int", "Instance", "int64", "Vector3", "CFrame", "AccessoryType", "AdPortalStatus", "AdUnitStatus", "Content", "AnimationPriority", "float", "TrackerStreamAnimation", "Animation", "Color3", "AudioSubType", "RestPose", "RigScale", "RigType", "MeshScaleUnit", "NormalId", "GuiObject", "ScreenOrientation", "RtlTextSupport", "VirtualCursorMode", "WrapLayerAutoSkin", "WrapLayerDebugMode", "WrapTargetDebugMode", "Attachment", "ColorSequence", "TextureMode", "NumberSequence", "BasePart", "CameraType", "FieldOfViewMode", "Vector2", "BrickColor", "BodyPart", "CommandPermission", "AlignType", "OrientationAlignmentMode", "PositionAlignmentMode", "ActuatorRelativeTo", "ActuatorType", "VelocityConstraintMode", "ControllerBase", "ControllerSensor", "MeshType", "StudioDataModelType", "TickCountSampleMethod", "double", "DebuggerStatus", "DialogBehaviorType", "DialogPurpose", "DialogTone", "DraggerCoordinateSpace", "DraggerMovementMode", "RotationOrder", "ExplosionType", "FacialAnimationFlags", "InOut", "LeftRight", "TopBottom", "Font", "Rect", "LocalizationTable", "SelectionBehavior", "AutomaticSize", "BorderMode", "UDim2", "SizeConstraint", "FrameStyle", "ButtonStyle", "ResamplerMode", "ScaleType", "FontSize", "TextTruncate", "TextXAlignment", "TextYAlignment", "ElasticBehavior", "ScrollBarInset", "ScrollingDirection", "VerticalScrollBarPosition", "ReturnKeyType", "TextInputType", "Camera", "ZIndexBehavior", "SafeAreaCompatibility", "ScreenInsets", "AdShape", "SurfaceGuiShape", "SurfaceGuiSizingMode", "PVInstance", "AdornCullingMode", "Axes", "Faces", "HandlesStyle", "Humanoid", "Folder", "HighlightDepthMode", "ReservedHighlightId", "HumanoidCollisionType", "HumanoidDisplayDistanceType", "Material", "HumanoidHealthDisplayType", "NameOcclusion", "HumanoidRigType", "IKControlType", "KeyCode", "UserInputState", "UserInputType", "Hole", "Technology", "RunContext", "ProtectedString", "PhysicalProperties", "MaterialPattern", "Ray", "SurfaceType", "InputType", "FormFactor", "PartType", "SkateboardController", "TerrainAcquisitionMethod", "BinaryString", "Region3int16", "CollisionFidelity", "RenderFidelity", "Style", "ModelLevelOfDetail", "ModelStreamingMode", "BinType", "AvatarUnificationMode", "ClientAnimatorThrottlingMode", "HumanoidOnlySetCollisionsOnStateChange", "InterpolationThrottlingMode", "MeshPartHeadsAndAccessories", "PhysicsSteppingMethod", "RejectCharacterDeletions", "ReplicateInstanceDestroySetting", "AnimatorRetargetingMode", "SignalBehavior", "StreamOutBehavior", "StreamingIntegrityMode", "Terrain", "PackagePermission", "NumberRange", "ParticleFlipbookLayout", "ParticleFlipbookMode", "ParticleOrientation", "ParticleEmitterShape", "ParticleEmitterShapeInOut", "ParticleEmitterShapeStyle", "PathStatus", "DebuggerPauseReason", "Breakpoint", "EnviromentalPhysicsThrottle", "SolverConvergenceVisualizationMode", "CameraMode", "Model", "ChatMode", "DevCameraOcclusionMode", "DevComputerCameraMovementMode", "DevComputerMovementMode", "DevTouchCameraMovementMode", "DevTouchMovementMode", "MembershipType", "SpawnLocation", "Team", "Player", "MultipleDocumentInterfaceInstance", "TriStateBoolean", "PoseEasingDirection", "PoseEasingStyle", "ProximityPromptExclusivity", "ProximityPromptStyle", "ServiceVisibility", "QualityLevel", "FramerateManagerMode", "GraphicsMode", "MeshPartDetailLevel", "RenderingTestComparisonMethod", "SensorUpdateType", "SensorMode", "CreatorType", "GearGenreSetting", "Genre", "Workspace", "RollOffMode", "SoundGroup", "UsageContext", "ReverbType", "VolumetricAudio", "DebuggerFrameType", "DebuggerVariable", "LoadDynamicHeads", "GameAvatarType", "R15CollisionType", "HumanoidStateMachineMode", "LoadCharacterLayeredClothing", "AutoIndentRule", "QDir", "ListDisplayMode", "QFont", "HoverAnimateSpeed", "OutputLayoutMode", "PermissionLevelShown", "RuntimeUndoBehavior", "StudioScriptEditorColorPresets", "ServerAudioBehavior", "UITheme", "AlphaMode", "ThreadPoolConfig", "TerrainFace", "TextChannel", "TextBox", "HorizontalAlignment", "VerticalAlignment", "TextChatMessageStatus", "TextSource", "DateTime", "ChatVersion", "TrackerLodFlagMode", "TrackerExtrapolationFlagMode", "TrackerLodValueMode", "PlaybackState", "TweenInfo", "AspectType", "DominantAxis", "UDim", "FillDirection", "SortOrder", "StartCorner", "EasingDirection", "EasingStyle", "TableMajorAxis", "ApplyStrokeMode", "LineJoinMode", "CustomCameraMode", "ComputerCameraMovementMode", "ComputerMovementMode", "ControlMode", "RotationType", "SavedQualitySetting", "TouchCameraMovementMode", "TouchMovementMode", "VRPlayMode", "VRSafetyBubbleMode", "MouseBehavior", "OverrideMouseIconBehavior", "VRScaling", "UserCFrame", "VRSessionState", "VoiceChatState"]
ApiClassTypeName = Literal["Instance", "Accoutrement", "Accessory", "Hat", "AdPortal", "AdService", "AdvancedDragger", "AnalyticsService", "Animation", "AnimationClip", "CurveAnimation", "KeyframeSequence", "AnimationClipProvider", "AnimationController", "AnimationFromVideoCreatorService", "AnimationFromVideoCreatorStudioService", "AnimationRigData", "AnimationStreamTrack", "AnimationTrack", "Animator", "AppUpdateService", "AssetCounterService", "AssetDeliveryProxy", "AssetImportService", "AssetImportSession", "AssetManagerService", "AssetPatchSettings", "AssetService", "Atmosphere", "Attachment", "Bone", "AudioSearchParams", "AvatarEditorService", "AvatarImportService", "Backpack", "BadgeService", "BaseImportData", "AnimationImportData", "FacsImportData", "GroupImportData", "JointImportData", "MaterialImportData", "MeshImportData", "RootImportData", "BasePlayerGui", "CoreGui", "PlayerGui", "StarterGui", "BaseWrap", "WrapLayer", "WrapTarget", "Beam", "BindableEvent", "BindableFunction", "BodyMover", "BodyAngularVelocity", "BodyForce", "BodyGyro", "BodyPosition", "BodyThrust", "BodyVelocity", "RocketPropulsion", "Breakpoint", "BrowserService", "BulkImportService", "CSGOptions", "CacheableContentProvider", "HSRDataContentProvider", "MeshContentProvider", "SolidModelContentProvider", "CalloutService", "Camera", "ChangeHistoryService", "CharacterAppearance", "BodyColors", "CharacterMesh", "Clothing", "Pants", "Shirt", "ShirtGraphic", "Skin", "Chat", "ClickDetector", "Clouds", "ClusterPacketCache", "CollectionService", "CommandInstance", "CommandService", "Configuration", "ConfigureServerService", "Constraint", "AlignOrientation", "AlignPosition", "AngularVelocity", "AnimationConstraint", "BallSocketConstraint", "HingeConstraint", "LineForce", "LinearVelocity", "PlaneConstraint", "Plane", "RigidConstraint", "RodConstraint", "RopeConstraint", "SlidingBallConstraint", "CylindricalConstraint", "PrismaticConstraint", "SpringConstraint", "Torque", "TorsionSpringConstraint", "UniversalConstraint", "VectorForce", "ContentProvider", "ContextActionService", "Controller", "HumanoidController", "SkateboardController", "VehicleController", "ControllerBase", "AirController", "ClimbController", "GroundController", "SwimController", "ControllerManager", "ControllerService", "CookiesService", "CorePackages", "CoreScriptDebuggingManagerHelper", "CoreScriptSyncService", "CrossDMScriptChangeListener", "CustomEvent", "CustomEventReceiver", "DataModelMesh", "BevelMesh", "BlockMesh", "CylinderMesh", "FileMesh", "SpecialMesh", "DataModelPatchService", "DataModelSession", "DataStoreIncrementOptions", "DataStoreInfo", "DataStoreKey", "DataStoreKeyInfo", "DataStoreObjectVersionInfo", "DataStoreOptions", "DataStoreService", "DataStoreSetOptions", "Debris", "DebugSettings", "DebuggablePluginWatcher", "DebuggerBreakpoint", "DebuggerConnection", "LocalDebuggerConnection", "DebuggerConnectionManager", "DebuggerLuaResponse", "DebuggerManager", "DebuggerUIService", "DebuggerVariable", "DebuggerWatch", "DeviceIdService", "Dialog", "DialogChoice", "DraftsService", "Dragger", "DraggerService", "EulerRotationCurve", "EventIngestService", "ExperienceAuthService", "ExperienceInviteOptions", "Explosion", "FaceAnimatorService", "FaceControls", "FaceInstance", "Decal", "Texture", "FacialAnimationRecordingService", "FacialAnimationStreamingService", "FacialAnimationStreamingServiceStats", "FacialAnimationStreamingServiceV2", "Feature", "Hole", "MotorFeature", "File", "Fire", "FlagStandService", "FloatCurve", "FlyweightService", "CSGDictionaryService", "NonReplicatedCSGDictionaryService", "Folder", "ForceField", "FriendService", "FunctionalTest", "GamePassService", "GameSettings", "GamepadService", "Geometry", "GetTextBoundsParams", "GlobalDataStore", "DataStore", "OrderedDataStore", "GoogleAnalyticsConfiguration", "GroupService", "GuiBase", "GuiBase2d", "GuiObject", "CanvasGroup", "Frame", "GuiButton", "ImageButton", "TextButton", "GuiLabel", "ImageLabel", "TextLabel", "ScrollingFrame", "TextBox", "VideoFrame", "ViewportFrame", "LayerCollector", "BillboardGui", "PluginGui", "DockWidgetPluginGui", "QWidgetPluginGui", "ScreenGui", "GuiMain", "SurfaceGuiBase", "AdGui", "SurfaceGui", "TextureGuiExperimental", "GuiBase3d", "FloorWire", "InstanceAdornment", "SelectionBox", "PVAdornment", "HandleAdornment", "BoxHandleAdornment", "ConeHandleAdornment", "CylinderHandleAdornment", "ImageHandleAdornment", "LineHandleAdornment", "SphereHandleAdornment", "WireframeHandleAdornment", "ParabolaAdornment", "SelectionSphere", "PartAdornment", "HandlesBase", "ArcHandles", "Handles", "SurfaceSelection", "SelectionLasso", "SelectionPartLasso", "SelectionPointLasso", "GuiService", "GuidRegistryService", "HapticService", "HeightmapImporterService", "HiddenSurfaceRemovalAsset", "Highlight", "Hopper", "HttpRbxApiService", "HttpRequest", "HttpService", "Humanoid", "HumanoidDescription", "IKControl", "ILegacyStudioBridge", "LegacyStudioBridge", "IXPService", "ImageDataExperimental", "IncrementalPatchBuilder", "InputObject", "InsertService", "JointInstance", "DynamicRotate", "RotateP", "RotateV", "Glue", "ManualSurfaceJointInstance", "ManualGlue", "ManualWeld", "Motor", "Motor6D", "Rotate", "Snap", "VelocityMotor", "Weld", "JointsService", "KeyboardService", "Keyframe", "KeyframeMarker", "KeyframeSequenceProvider", "LSPFileSyncService", "LanguageService", "Light", "PointLight", "SpotLight", "SurfaceLight", "Lighting", "LiveScriptingService", "LocalStorageService", "AppStorageService", "UserStorageService", "LocalizationService", "LocalizationTable", "CloudLocalizationTable", "LodDataEntity", "LodDataService", "LogService", "LoginService", "LuaSettings", "LuaSourceContainer", "BaseScript", "CoreScript", "Script", "LocalScript", "ModuleScript", "LuaWebService", "LuauScriptAnalyzerService", "MarkerCurve", "MarketplaceService", "MaterialGenerationService", "MaterialGenerationSession", "MaterialService", "MaterialVariant", "MemStorageConnection", "MemStorageService", "MemoryStoreQueue", "MemoryStoreService", "MemoryStoreSortedMap", "MeshDataExperimental", "Message", "Hint", "MessageBusConnection", "MessageBusService", "MessagingService", "MetaBreakpoint", "MetaBreakpointContext", "MetaBreakpointManager", "Mouse", "PlayerMouse", "PluginMouse", "MouseService", "MultipleDocumentInterfaceInstance", "NetworkMarker", "NetworkPeer", "NetworkClient", "NetworkServer", "NetworkReplicator", "ClientReplicator", "ServerReplicator", "NetworkSettings", "NoCollisionConstraint", "NotificationService", "PVInstance", "BasePart", "CornerWedgePart", "FormFactorPart", "Part", "FlagStand", "Platform", "Seat", "SkateboardPlatform", "SpawnLocation", "WedgePart", "Terrain", "TriangleMeshPart", "MeshPart", "PartOperation", "IntersectOperation", "NegateOperation", "UnionOperation", "TrussPart", "VehicleSeat", "Model", "Actor", "BackpackItem", "HopperBin", "Tool", "Flag", "Status", "WorldRoot", "Workspace", "WorldModel", "PackageLink", "PackageService", "PackageUIService", "Pages", "AudioPages", "CatalogPages", "DataStoreKeyPages", "DataStoreListingPages", "DataStorePages", "DataStoreVersionPages", "FriendPages", "InventoryPages", "EmotesPages", "OutfitPages", "StandardPages", "PartOperationAsset", "ParticleEmitter", "PatchBundlerFileWatch", "PatchMapping", "Path", "PathfindingLink", "PathfindingModifier", "PathfindingService", "PausedState", "PausedStateBreakpoint", "PausedStateException", "PermissionsService", "PhysicsService", "PhysicsSettings", "Player", "PlayerEmulatorService", "PlayerScripts", "Players", "Plugin", "PluginAction", "PluginDebugService", "PluginDragEvent", "PluginGuiService", "PluginManagementService", "PluginManager", "PluginManagerInterface", "PluginMenu", "PluginPolicyService", "PluginToolbar", "PluginToolbarButton", "PointsService", "PolicyService", "PoseBase", "NumberPose", "Pose", "PostEffect", "BloomEffect", "BlurEffect", "ColorCorrectionEffect", "DepthOfFieldEffect", "SunRaysEffect", "ProcessInstancePhysicsService", "ProximityPrompt", "ProximityPromptService", "PublishService", "RbxAnalyticsService", "ReflectionMetadata", "ReflectionMetadataCallbacks", "ReflectionMetadataClasses", "ReflectionMetadataEnums", "ReflectionMetadataEvents", "ReflectionMetadataFunctions", "ReflectionMetadataItem", "ReflectionMetadataClass", "ReflectionMetadataEnum", "ReflectionMetadataEnumItem", "ReflectionMetadataMember", "ReflectionMetadataProperties", "ReflectionMetadataYieldFunctions", "RemoteCursorService", "RemoteDebuggerServer", "RemoteEvent", "RemoteFunction", "RenderSettings", "RenderingTest", "ReplicatedFirst", "ReplicatedStorage", "RobloxPluginGuiService", "RobloxReplicatedStorage", "RotationCurve", "RtMessagingService", "RunService", "RuntimeScriptService", "SafetyService", "ScreenshotHud", "ScriptBuilder", "SyncScriptBuilder", "ScriptChangeService", "ScriptCloneWatcher", "ScriptCloneWatcherHelper", "ScriptContext", "ScriptDebugger", "ScriptDocument", "ScriptEditorService", "ScriptRegistrationService", "ScriptRuntime", "ScriptService", "Selection", "SelectionHighlightManager", "SensorBase", "BuoyancySensor", "ControllerSensor", "ControllerPartSensor", "ServerScriptService", "ServerStorage", "ServiceProvider", "DataModel", "GenericSettings", "AnalysticsSettings", "GlobalSettings", "UserSettings", "ServiceVisibilityService", "SessionService", "SharedTableRegistry", "ShorelineUpgraderService", "Sky", "Smoke", "SmoothVoxelsUpgraderService", "SnippetService", "SocialService", "Sound", "SoundEffect", "ChorusSoundEffect", "CompressorSoundEffect", "CustomSoundEffect", "AssetSoundEffect", "ChannelSelectorSoundEffect", "DistortionSoundEffect", "EchoSoundEffect", "EqualizerSoundEffect", "FlangeSoundEffect", "PitchShiftSoundEffect", "ReverbSoundEffect", "TremoloSoundEffect", "SoundGroup", "SoundService", "Sparkles", "SpawnerService", "Speaker", "StackFrame", "StandalonePluginScripts", "StarterGear", "StarterPack", "StarterPlayer", "StarterPlayerScripts", "StarterCharacterScripts", "Stats", "StatsItem", "RunningAverageItemDouble", "RunningAverageItemInt", "RunningAverageTimeIntervalItem", "TotalCountTimeIntervalItem", "Studio", "StudioAssetService", "StudioData", "StudioDeviceEmulatorService", "StudioPublishService", "StudioScriptDebugEventListener", "StudioSdkService", "StudioService", "StudioTheme", "SurfaceAppearance", "TaskScheduler", "Team", "TeamCreateData", "TeamCreatePublishService", "TeamCreateService", "Teams", "TeleportAsyncResult", "TeleportOptions", "TeleportService", "TemporaryCageMeshProvider", "TemporaryScriptService", "TerrainDetail", "TerrainRegion", "TestService", "TextBoxService", "TextChannel", "TextChatCommand", "TextChatConfigurations", "BubbleChatConfiguration", "ChatInputBarConfiguration", "ChatWindowConfiguration", "TextChatMessage", "TextChatMessageProperties", "TextChatService", "TextFilterResult", "TextService", "TextSource", "ThirdPartyUserService", "ThreadState", "TimerService", "ToastNotificationService", "TouchInputService", "TouchTransmitter", "TracerService", "TrackerLodController", "TrackerStreamAnimation", "Trail", "Translator", "TweenBase", "Tween", "TweenService", "UGCValidationService", "UIBase", "UIComponent", "UIConstraint", "UIAspectRatioConstraint", "UISizeConstraint", "UITextSizeConstraint", "UICorner", "UIGradient", "UILayout", "UIGridStyleLayout", "UIGridLayout", "UIListLayout", "UIPageLayout", "UITableLayout", "UIPadding", "UIScale", "UIStroke", "UnvalidatedAssetService", "UserGameSettings", "UserInputService", "UserService", "VRService", "ValueBase", "BinaryStringValue", "BoolValue", "BrickColorValue", "CFrameValue", "Color3Value", "DoubleConstrainedValue", "IntConstrainedValue", "IntValue", "NumberValue", "ObjectValue", "RayValue", "StringValue", "Vector3Value", "Vector3Curve", "VersionControlService", "VideoCaptureService", "VirtualInputManager", "VirtualUser", "VisibilityCheckDispatcher", "VisibilityService", "Visit", "VoiceChatInternal", "VoiceChatService", "WeldConstraint", "<<<ROOT>>>"]
ApiVersion = Literal[1]
ApiSecurityReadData = Literal["None", "LocalUserSecurity", "PluginSecurity", "RobloxScriptSecurity", "RobloxSecurity"]
ApiSecurityWriteData = Literal["None", "LocalUserSecurity", "PluginSecurity", "RobloxScriptSecurity", "NotAccessibleSecurity", "RobloxSecurity"]
EnumName = Literal["AccessoryType", "ActionType", "ActuatorRelativeTo", "ActuatorType", "AdPortalStatus", "AdPortalType", "AdShape", "AdTeleportMethod", "AdUnitStatus", "AdornCullingMode", "AlignType", "AlphaMode", "AnalyticsEconomyAction", "AnalyticsLogLevel", "AnalyticsProgressionStatus", "AnimationPriority", "AnimatorRetargetingMode", "AppShellActionType", "AppShellFeature", "AppUpdateStatus", "ApplyStrokeMode", "AspectType", "AssetFetchStatus", "AssetType", "AssetTypeVerification", "AudioSubType", "AutoIndentRule", "AutomaticSize", "AvatarAssetType", "AvatarContextMenuOption", "AvatarItemType", "AvatarPromptResult", "AvatarThumbnailCustomizationType", "AvatarUnificationMode", "Axis", "BinType", "BodyPart", "BodyPartR15", "BorderMode", "BreakReason", "BreakpointRemoveReason", "BulkMoveMode", "BundleType", "Button", "ButtonStyle", "CageType", "CameraMode", "CameraPanMode", "CameraType", "CatalogCategoryFilter", "CatalogSortAggregation", "CatalogSortType", "CellBlock", "CellMaterial", "CellOrientation", "CenterDialogType", "ChatCallbackType", "ChatColor", "ChatMode", "ChatPrivacyMode", "ChatStyle", "ChatVersion", "ClientAnimatorThrottlingMode", "CollisionFidelity", "CommandPermission", "CompletionItemKind", "CompletionItemTag", "CompletionTriggerKind", "ComputerCameraMovementMode", "ComputerMovementMode", "ConnectionError", "ConnectionState", "ContextActionPriority", "ContextActionResult", "ControlMode", "CoreGuiType", "CreateOutfitFailure", "CreatorType", "CreatorTypeFilter", "CurrencyType", "CustomCameraMode", "DataStoreRequestType", "DebuggerEndReason", "DebuggerExceptionBreakMode", "DebuggerFrameType", "DebuggerPauseReason", "DebuggerStatus", "DevCameraOcclusionMode", "DevComputerCameraMovementMode", "DevComputerMovementMode", "DevTouchCameraMovementMode", "DevTouchMovementMode", "DeveloperMemoryTag", "DeviceType", "DialogBehaviorType", "DialogPurpose", "DialogTone", "DominantAxis", "DraftStatusCode", "DraggerCoordinateSpace", "DraggerMovementMode", "EasingDirection", "EasingStyle", "ElasticBehavior", "EnviromentalPhysicsThrottle", "ExperienceAuthScope", "ExplosionType", "FacialAnimationFlags", "FacialAnimationStreamingState", "FieldOfViewMode", "FillDirection", "FilterResult", "Font", "FontSize", "FontStyle", "FontWeight", "FormFactor", "FrameStyle", "FramerateManagerMode", "FriendRequestEvent", "FriendStatus", "FunctionalTestResult", "GameAvatarType", "GearGenreSetting", "GearType", "Genre", "GraphicsMode", "GuiType", "HandlesStyle", "HighlightDepthMode", "HorizontalAlignment", "HoverAnimateSpeed", "HttpCachePolicy", "HttpContentType", "HttpError", "HttpRequestType", "HumanoidCollisionType", "HumanoidDisplayDistanceType", "HumanoidHealthDisplayType", "HumanoidOnlySetCollisionsOnStateChange", "HumanoidRigType", "HumanoidStateMachineMode", "HumanoidStateType", "IKCollisionsMode", "IKControlType", "IXPLoadingStatus", "InOut", "InfoType", "InitialDockState", "InputType", "InterpolationThrottlingMode", "JointCreationMode", "KeyCode", "KeyInterpolationMode", "KeywordFilterType", "Language", "LeftRight", "Limb", "LineJoinMode", "ListDisplayMode", "ListenerType", "LoadCharacterLayeredClothing", "LoadDynamicHeads", "MarkupKind", "Material", "MaterialPattern", "MembershipType", "MeshPartDetailLevel", "MeshPartHeadsAndAccessories", "MeshScaleUnit", "MeshType", "MessageType", "ModelLevelOfDetail", "ModelStreamingMode", "ModifierKey", "MouseBehavior", "MoveState", "MuteState", "NameOcclusion", "NetworkOwnership", "NormalId", "OrientationAlignmentMode", "OutfitSource", "OutfitType", "OutputLayoutMode", "OverrideMouseIconBehavior", "PackagePermission", "PartType", "ParticleEmitterShape", "ParticleEmitterShapeInOut", "ParticleEmitterShapeStyle", "ParticleFlipbookLayout", "ParticleFlipbookMode", "ParticleFlipbookTextureCompatible", "ParticleOrientation", "PathStatus", "PathWaypointAction", "PermissionLevelShown", "PhysicsSimulationRate", "PhysicsSteppingMethod", "Platform", "PlaybackState", "PlayerActions", "PlayerChatType", "PoseEasingDirection", "PoseEasingStyle", "PositionAlignmentMode", "PrivilegeType", "ProductLocationRestriction", "ProductPurchaseDecision", "PromptPublishAssetResult", "PropertyStatus", "ProximityPromptExclusivity", "ProximityPromptInputType", "ProximityPromptStyle", "QualityLevel", "R15CollisionType", "RaycastFilterType", "RejectCharacterDeletions", "RenderFidelity", "RenderPriority", "RenderingTestComparisonMethod", "ReplicateInstanceDestroySetting", "ResamplerMode", "ReservedHighlightId", "RestPose", "ReturnKeyType", "ReverbType", "RibbonTool", "RigScale", "RigType", "RollOffMode", "RotationOrder", "RotationType", "RtlTextSupport", "RunContext", "RuntimeUndoBehavior", "SafeAreaCompatibility", "SalesTypeFilter", "SaveAvatarThumbnailCustomizationFailure", "SaveFilter", "SavedQualitySetting", "ScaleType", "ScopeCheckResult", "ScreenInsets", "ScreenOrientation", "ScrollBarInset", "ScrollingDirection", "SelectionBehavior", "SensorMode", "SensorUpdateType", "ServerAudioBehavior", "ServiceVisibility", "Severity", "SignalBehavior", "SizeConstraint", "SolverConvergenceVisualizationMode", "SortDirection", "SortOrder", "SpecialKey", "StartCorner", "Status", "StreamOutBehavior", "StreamingIntegrityMode", "StreamingPauseMode", "StudioCloseMode", "StudioDataModelType", "StudioScriptEditorColorCategories", "StudioScriptEditorColorPresets", "StudioStyleGuideColor", "StudioStyleGuideModifier", "Style", "SurfaceConstraint", "SurfaceGuiShape", "SurfaceGuiSizingMode", "SurfaceType", "SwipeDirection", "TableMajorAxis", "Technology", "TeleportMethod", "TeleportResult", "TeleportState", "TeleportType", "TerrainAcquisitionMethod", "TerrainFace", "TextChatMessageStatus", "TextFilterContext", "TextInputType", "TextTruncate", "TextXAlignment", "TextYAlignment", "TextureMode", "TextureQueryType", "ThreadPoolConfig", "ThrottlingPriority", "ThumbnailSize", "ThumbnailType", "TickCountSampleMethod", "TopBottom", "TouchCameraMovementMode", "TouchMovementMode", "TrackerError", "TrackerExtrapolationFlagMode", "TrackerLodFlagMode", "TrackerLodValueMode", "TrackerMode", "TrackerPromptEvent", "TriStateBoolean", "TweenStatus", "UITheme", "UiMessageType", "UsageContext", "UserCFrame", "UserInputState", "UserInputType", "VRPlayMode", "VRSafetyBubbleMode", "VRScaling", "VRSessionState", "VRTouchpad", "VRTouchpadMode", "VelocityConstraintMode", "VerticalAlignment", "VerticalScrollBarPosition", "VibrationMotor", "VirtualCursorMode", "VirtualInputMode", "VoiceChatState", "VolumetricAudio", "WaterDirection", "WaterForce", "WrapLayerAutoSkin", "WrapLayerDebugMode", "WrapTargetDebugMode", "ZIndexBehavior"]
EnumItemName = Literal["Unknown", "Hat", "Hair", "Face", "Neck", "Shoulder", "Front", "Back", "Waist", "TShirt", "Shirt", "Pants", "Jacket", "Sweater", "Shorts", "LeftShoe", "RightShoe", "DressSkirt", "Eyebrow", "Eyelash", "Nothing", "Pause", "Lose", "Draw", "Win", "Attachment0", "Attachment1", "World", "None", "Motor", "Servo", "Invalid", "Inactive", "Active", "Forward", "Return", "HorizontalRectangle", "Undefined", "PortalForward", "PortalReturn", "InGameMenuBackButton", "UIBackButton", "Inactive", "Active", "Automatic", "Never", "Parallel", "Perpendicular", "Overlay", "Transparency", "Default", "Acquire", "Spend", "Trace", "Debug", "Information", "Warning", "Error", "Fatal", "Default", "Begin", "Complete", "Abandon", "Fail", "Idle", "Movement", "Action", "Action2", "Action3", "Action4", "Core", "Default", "Disabled", "Enabled", "None", "OpenApp", "TapChatTab", "TapConversationEntry", "TapAvatarTab", "ReadConversation", "TapGamePageTab", "TapHomePageTab", "GamePageLoaded", "HomePageLoaded", "AvatarEditorPageLoaded", "None", "Chat", "AvatarEditor", "GamePage", "HomePage", "More", "Landing", "Unknown", "NotSupported", "Failed", "NotAvailable", "Available", "Contextual", "Border", "FitWithinMaxSize", "ScaleWithParentSize", "Success", "Failure", "None", "Loading", "TimedOut", "Image", "TShirt", "Audio", "Mesh", "Lua", "Hat", "Place", "Model", "Shirt", "Pants", "Decal", "Head", "Face", "Gear", "Badge", "Animation", "Torso", "RightArm", "LeftArm", "LeftLeg", "RightLeg", "Package", "GamePass", "Plugin", "MeshPart", "HairAccessory", "FaceAccessory", "NeckAccessory", "ShoulderAccessory", "FrontAccessory", "BackAccessory", "WaistAccessory", "ClimbAnimation", "DeathAnimation", "FallAnimation", "IdleAnimation", "JumpAnimation", "RunAnimation", "SwimAnimation", "WalkAnimation", "PoseAnimation", "MoodAnimation", "EarAccessory", "EyeAccessory", "EmoteAnimation", "Video", "TShirtAccessory", "ShirtAccessory", "PantsAccessory", "JacketAccessory", "SweaterAccessory", "ShortsAccessory", "LeftShoeAccessory", "RightShoeAccessory", "DressSkirtAccessory", "EyebrowAccessory", "EyelashAccessory", "DynamicHead", "FontFamily", "Default", "ClientOnly", "Always", "Music", "SoundEffect", "Off", "Absolute", "Relative", "None", "X", "Y", "XY", "TShirt", "Hat", "HairAccessory", "FaceAccessory", "NeckAccessory", "ShoulderAccessory", "FrontAccessory", "BackAccessory", "WaistAccessory", "Shirt", "Pants", "Gear", "Head", "Face", "Torso", "RightArm", "LeftArm", "LeftLeg", "RightLeg", "ClimbAnimation", "FallAnimation", "IdleAnimation", "JumpAnimation", "RunAnimation", "SwimAnimation", "WalkAnimation", "MoodAnimation", "EmoteAnimation", "TShirtAccessory", "ShirtAccessory", "PantsAccessory", "JacketAccessory", "SweaterAccessory", "ShortsAccessory", "LeftShoeAccessory", "RightShoeAccessory", "DressSkirtAccessory", "EyebrowAccessory", "EyelashAccessory", "DynamicHead", "Friend", "Chat", "Emote", "InspectMenu", "Asset", "Bundle", "Success", "PermissionDenied", "Failed", "Closeup", "FullBody", "Default", "Disabled", "Enabled", "X", "Y", "Z", "Script", "GameTool", "Grab", "Clone", "Hammer", "Head", "Torso", "LeftArm", "RightArm", "LeftLeg", "RightLeg", "Head", "UpperTorso", "LowerTorso", "LeftFoot", "LeftLowerLeg", "LeftUpperLeg", "RightFoot", "RightLowerLeg", "RightUpperLeg", "LeftHand", "LeftLowerArm", "LeftUpperArm", "RightHand", "RightLowerArm", "RightUpperArm", "RootPart", "Unknown", "Outline", "Middle", "Inset", "Other", "Error", "UserBreakpoint", "SpecialBreakpoint", "Requested", "ScriptChanged", "ScriptRemoved", "FireAllEvents", "FireCFrameChanged", "BodyParts", "Animations", "Shoes", "DynamicHead", "DynamicHeadAvatar", "Jump", "Dismount", "Custom", "RobloxButtonDefault", "RobloxButton", "RobloxRoundButton", "RobloxRoundDefaultButton", "RobloxRoundDropdownButton", "Inner", "Outer", "Classic", "LockFirstPerson", "Classic", "EdgeBump", "Fixed", "Watch", "Attach", "Track", "Follow", "Custom", "Scriptable", "Orbital", "None", "Featured", "Collectibles", "CommunityCreations", "Premium", "Recommended", "Past12Hours", "PastDay", "Past3Days", "PastWeek", "PastMonth", "AllTime", "Relevance", "PriceHighToLow", "PriceLowToHigh", "MostFavorited", "RecentlyCreated", "Bestselling", "Solid", "VerticalWedge", "CornerWedge", "InverseCornerWedge", "HorizontalWedge", "Empty", "Grass", "Sand", "Brick", "Granite", "Asphalt", "Iron", "Aluminum", "Gold", "WoodPlank", "WoodLog", "Gravel", "CinderBlock", "MossyStone", "Cement", "RedPlastic", "BluePlastic", "Water", "NegZ", "X", "Z", "NegX", "UnsolicitedDialog", "PlayerInitiatedDialog", "ModalDialog", "QuitDialog", "OnCreatingChatWindow", "OnClientSendingMessage", "OnClientFormattingMessage", "OnServerReceivingMessage", "Blue", "Green", "Red", "White", "Menu", "TextAndMenu", "AllUsers", "NoOne", "Friends", "Classic", "Bubble", "ClassicAndBubble", "LegacyChatService", "TextChatService", "Default", "Disabled", "Enabled", "Default", "Hull", "Box", "PreciseConvexDecomposition", "DynamicPreciseConvexDecomposition", "Plugin", "LocalUser", "Text", "Method", "Function", "Constructor", "Field", "Variable", "Class", "Interface", "Module", "Property", "Unit", "Value", "Enum", "Keyword", "Snippet", "Color", "File", "Reference", "Folder", "EnumMember", "Constant", "Struct", "Event", "Operator", "TypeParameter", "Deprecated", "IncorrectIndexType", "PluginPermissions", "CommandLinePermissions", "RobloxPermissions", "AddParens", "PutCursorInParens", "TypeCorrect", "ClientServerBoundaryViolation", "Invoked", "TriggerCharacter", "TriggerForIncompleteCompletions", "Default", "Follow", "Classic", "Orbital", "CameraToggle", "Default", "KeyboardMouse", "ClickToMove", "OK", "Unknown", "DisconnectErrors", "DisconnectBadhash", "DisconnectSecurityKeyMismatch", "DisconnectNewSecurityKeyMismatch", "DisconnectProtocolMismatch", "DisconnectReceivePacketError", "DisconnectReceivePacketStreamError", "DisconnectSendPacketError", "DisconnectIllegalTeleport", "DisconnectDuplicatePlayer", "DisconnectDuplicateTicket", "DisconnectTimeout", "DisconnectLuaKick", "DisconnectOnRemoteSysStats", "DisconnectHashTimeout", "DisconnectCloudEditKick", "DisconnectPlayerless", "DisconnectEvicted", "DisconnectDevMaintenance", "DisconnectRobloxMaintenance", "DisconnectRejoin", "DisconnectConnectionLost", "DisconnectIdle", "DisconnectRaknetErrors", "DisconnectWrongVersion", "DisconnectBySecurityPolicy", "DisconnectBlockedIP", "DisconnectClientFailure", "DisconnectClientRequest", "DisconnectModeratedGame", "DisconnectRomarkEndOfTest", "ReplicatorTimeout", "PlayerRemoved", "DisconnectOutOfMemoryKeepPlayingLeave", "PlacelaunchErrors", "PlacelaunchDisabled", "PlacelaunchError", "PlacelaunchGameEnded", "PlacelaunchGameFull", "PlacelaunchUserLeft", "PlacelaunchRestricted", "PlacelaunchUnauthorized", "PlacelaunchFlooded", "PlacelaunchHashExpired", "PlacelaunchHashException", "PlacelaunchPartyCannotFit", "PlacelaunchHttpError", "PlacelaunchUserPrivacyUnauthorized", "PlacelaunchCustomMessage", "PlacelaunchOtherError", "TeleportErrors", "TeleportFailure", "TeleportGameNotFound", "TeleportGameEnded", "TeleportGameFull", "TeleportUnauthorized", "TeleportFlooded", "TeleportIsTeleporting", "Connected", "Disconnected", "Low", "Medium", "High", "Pass", "Sink", "MouseLockSwitch", "Classic", "PlayerList", "Health", "Backpack", "Chat", "All", "EmotesMenu", "SelfView", "InvalidName", "OutfitLimitReached", "Other", "User", "Group", "User", "Group", "All", "Default", "Robux", "Tix", "Default", "Follow", "Classic", "GetAsync", "SetIncrementAsync", "UpdateAsync", "GetSortedAsync", "SetIncrementSortedAsync", "OnUpdate", "ClientRequest", "Timeout", "InvalidHost", "Disconnected", "ServerShutdown", "ServerProtocolMismatch", "ConfigurationFailed", "RpcError", "Never", "Unhandled", "Always", "C", "Lua", "Unknown", "Requested", "Breakpoint", "Exception", "SingleStep", "Entrypoint", "Success", "Timeout", "ConnectionLost", "InvalidResponse", "InternalError", "InvalidState", "RpcError", "InvalidArgument", "ConnectionClosed", "Zoom", "Invisicam", "UserChoice", "Classic", "Follow", "Orbital", "CameraToggle", "UserChoice", "KeyboardMouse", "ClickToMove", "Scriptable", "UserChoice", "Classic", "Follow", "Orbital", "UserChoice", "Thumbstick", "DPad", "Thumbpad", "ClickToMove", "Scriptable", "DynamicThumbstick", "Internal", "HttpCache", "Instances", "Signals", "LuaHeap", "Script", "PhysicsCollision", "PhysicsParts", "GraphicsSolidModels", "GraphicsMeshParts", "GraphicsParticles", "GraphicsParts", "GraphicsSpatialHash", "GraphicsTerrain", "GraphicsTexture", "GraphicsTextureCharacter", "Sounds", "StreamingSounds", "TerrainVoxels", "Gui", "Animation", "Navigation", "GeometryCSG", "Unknown", "Desktop", "Tablet", "Phone", "SinglePlayer", "MultiplePlayers", "Quest", "Help", "Shop", "Neutral", "Friendly", "Enemy", "Width", "Height", "OK", "DraftOutdated", "ScriptRemoved", "DraftCommitted", "Object", "World", "Geometric", "Physical", "In", "Out", "InOut", "Linear", "Sine", "Back", "Quad", "Quart", "Quint", "Bounce", "Elastic", "Exponential", "Circular", "Cubic", "WhenScrollable", "Always", "Never", "DefaultAuto", "Disabled", "Always", "Skip2", "Skip4", "Skip8", "Skip16", "DefaultScope", "CreatorAssetsCreate", "NoCraters", "Craters", "None", "Place", "Server", "PlaceServer", "None", "Audio", "Video", "Place", "Server", "Vertical", "Diagonal", "MaxAxis", "Horizontal", "Vertical", "Rejected", "Accepted", "Legacy", "Arial", "ArialBold", "SourceSans", "SourceSansBold", "SourceSansSemibold", "SourceSansLight", "SourceSansItalic", "Bodoni", "Garamond", "Cartoon", "Code", "Highway", "SciFi", "Arcade", "Fantasy", "Antique", "Gotham", "GothamMedium", "GothamBold", "GothamBlack", "AmaticSC", "Bangers", "Creepster", "DenkOne", "Fondamento", "FredokaOne", "GrenzeGotisch", "IndieFlower", "JosefinSans", "Jura", "Kalam", "LuckiestGuy", "Merriweather", "Michroma", "Nunito", "Oswald", "PatrickHand", "PermanentMarker", "Roboto", "RobotoCondensed", "RobotoMono", "Sarpanch", "SpecialElite", "TitilliumWeb", "Ubuntu", "Unknown", "Size8", "Size9", "Size10", "Size11", "Size12", "Size14", "Size18", "Size24", "Size36", "Size48", "Size28", "Size32", "Size42", "Size60", "Size96", "Normal", "Italic", "Thin", "ExtraLight", "Light", "Regular", "Medium", "SemiBold", "Bold", "ExtraBold", "Heavy", "Symmetric", "Brick", "Plate", "Custom", "Custom", "ChatBlue", "RobloxSquare", "RobloxRound", "ChatGreen", "ChatRed", "DropShadow", "Automatic", "On", "Off", "Issue", "Revoke", "Accept", "Deny", "Unknown", "NotFriend", "Friend", "FriendRequestSent", "FriendRequestReceived", "Passed", "Warning", "Error", "R6", "R15", "PlayerChoice", "AllGenres", "MatchingGenreOnly", "MeleeWeapons", "RangedWeapons", "Explosives", "PowerUps", "NavigationEnhancers", "MusicalInstruments", "SocialItems", "BuildingTools", "Transport", "All", "TownAndCity", "Fantasy", "SciFi", "Ninja", "Scary", "Pirate", "Adventure", "Sports", "Funny", "WildWest", "War", "SkatePark", "Tutorial", "Automatic", "Direct3D11", "OpenGL", "Metal", "Vulkan", "NoGraphics", "Core", "Custom", "CustomBillboards", "PlayerNameplates", "Resize", "Movement", "AlwaysOnTop", "Occluded", "Center", "Left", "Right", "VerySlow", "Slow", "Medium", "Fast", "VeryFast", "None", "Full", "DataOnly", "Default", "InternalRedirectRefresh", "ApplicationJson", "ApplicationXml", "ApplicationUrlEncoded", "TextPlain", "TextXml", "OK", "InvalidUrl", "DnsResolve", "ConnectFail", "OutOfMemory", "TimedOut", "TooManyRedirects", "InvalidRedirect", "NetFail", "Aborted", "SslConnectFail", "SslVerificationFail", "Unknown", "Default", "MarketplaceService", "Players", "Chat", "Avatar", "Analytics", "Localization", "OuterBox", "InnerBox", "Viewer", "Subject", "None", "DisplayWhenDamaged", "AlwaysOn", "AlwaysOff", "Default", "Disabled", "Enabled", "R6", "R15", "Default", "Legacy", "NoStateMachine", "LuaStateMachine", "FallingDown", "Running", "RunningNoPhysics", "Climbing", "StrafingNoPhysics", "Ragdoll", "GettingUp", "Jumping", "Landed", "Flying", "Freefall", "Seated", "PlatformStanding", "Dead", "Swimming", "Physics", "None", "NoCollisions", "OtherMechanismsAnchored", "IncludeContactedMechanisms", "Transform", "Position", "Rotation", "LookAt", "None", "Pending", "Initialized", "ErrorTimedOut", "ErrorConnection", "ErrorJsonParse", "ErrorInvalidUser", "Edge", "Inset", "Center", "Asset", "Product", "GamePass", "Subscription", "Bundle", "Top", "Bottom", "Left", "Right", "Float", "NoInput", "Constant", "Sin", "Default", "Disabled", "Enabled", "All", "Surface", "None", "Unknown", "Backspace", "Tab", "Clear", "Return", "Pause", "Escape", "Space", "QuotedDouble", "Hash", "Dollar", "Percent", "Ampersand", "Quote", "LeftParenthesis", "RightParenthesis", "Asterisk", "Plus", "Comma", "Minus", "Period", "Slash", "Zero", "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine", "Colon", "Semicolon", "LessThan", "Equals", "GreaterThan", "Question", "At", "LeftBracket", "BackSlash", "RightBracket", "Caret", "Underscore", "Backquote", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "LeftCurly", "Pipe", "RightCurly", "Tilde", "Delete", "KeypadZero", "KeypadOne", "KeypadTwo", "KeypadThree", "KeypadFour", "KeypadFive", "KeypadSix", "KeypadSeven", "KeypadEight", "KeypadNine", "KeypadPeriod", "KeypadDivide", "KeypadMultiply", "KeypadMinus", "KeypadPlus", "KeypadEnter", "KeypadEquals", "Up", "Down", "Right", "Left", "Insert", "Home", "End", "PageUp", "PageDown", "LeftShift", "RightShift", "LeftMeta", "RightMeta", "LeftAlt", "RightAlt", "LeftControl", "RightControl", "CapsLock", "NumLock", "ScrollLock", "LeftSuper", "RightSuper", "Mode", "Compose", "Help", "Print", "SysReq", "Break", "Menu", "Power", "Euro", "Undo", "F1", "F2", "F3", "F4", "F5", "F6", "F7", "F8", "F9", "F10", "F11", "F12", "F13", "F14", "F15", "World0", "World1", "World2", "World3", "World4", "World5", "World6", "World7", "World8", "World9", "World10", "World11", "World12", "World13", "World14", "World15", "World16", "World17", "World18", "World19", "World20", "World21", "World22", "World23", "World24", "World25", "World26", "World27", "World28", "World29", "World30", "World31", "World32", "World33", "World34", "World35", "World36", "World37", "World38", "World39", "World40", "World41", "World42", "World43", "World44", "World45", "World46", "World47", "World48", "World49", "World50", "World51", "World52", "World53", "World54", "World55", "World56", "World57", "World58", "World59", "World60", "World61", "World62", "World63", "World64", "World65", "World66", "World67", "World68", "World69", "World70", "World71", "World72", "World73", "World74", "World75", "World76", "World77", "World78", "World79", "World80", "World81", "World82", "World83", "World84", "World85", "World86", "World87", "World88", "World89", "World90", "World91", "World92", "World93", "World94", "World95", "ButtonX", "ButtonY", "ButtonA", "ButtonB", "ButtonR1", "ButtonL1", "ButtonR2", "ButtonL2", "ButtonR3", "ButtonL3", "ButtonStart", "ButtonSelect", "DPadLeft", "DPadRight", "DPadUp", "DPadDown", "Thumbstick1", "Thumbstick2", "Constant", "Linear", "Cubic", "Include", "Exclude", "Default", "Left", "Center", "Right", "Head", "Torso", "LeftArm", "RightArm", "LeftLeg", "RightLeg", "Unknown", "Round", "Bevel", "Miter", "Horizontal", "Vertical", "Camera", "CFrame", "ObjectPosition", "ObjectCFrame", "Default", "Disabled", "Enabled", "Default", "Disabled", "Enabled", "PlainText", "Markdown", "Plastic", "Wood", "Slate", "Concrete", "CorrodedMetal", "DiamondPlate", "Foil", "Grass", "Ice", "Marble", "Granite", "Brick", "Pebble", "Sand", "Fabric", "SmoothPlastic", "Metal", "WoodPlanks", "Cobblestone", "Air", "Water", "Rock", "Glacier", "Snow", "Sandstone", "Mud", "Basalt", "Ground", "CrackedLava", "Neon", "Glass", "Asphalt", "LeafyGrass", "Salt", "Limestone", "Pavement", "ForceField", "Regular", "Organic", "None", "BuildersClub", "TurboBuildersClub", "OutrageousBuildersClub", "Premium", "DistanceBased", "Level00", "Level01", "Level02", "Level03", "Level04", "Default", "Disabled", "Enabled", "Stud", "Meter", "CM", "MM", "Foot", "Inch", "Head", "Torso", "Wedge", "Prism", "Pyramid", "ParallelRamp", "RightAngleRamp", "CornerWedge", "Brick", "Sphere", "Cylinder", "FileMesh", "MessageOutput", "MessageInfo", "MessageWarning", "MessageError", "Automatic", "StreamingMesh", "Disabled", "Default", "Atomic", "Persistent", "PersistentPerPlayer", "Nonatomic", "Alt", "Ctrl", "Meta", "Shift", "Default", "LockCenter", "LockCurrentPosition", "Stopped", "Coasting", "Pushing", "Stopping", "AirFree", "Unmuted", "Muted", "OccludeAll", "EnemyOcclusion", "NoOcclusion", "Automatic", "Manual", "OnContact", "Top", "Bottom", "Back", "Front", "Right", "Left", "OneAttachment", "TwoAttachment", "All", "Created", "Purchased", "All", "Avatar", "DynamicHead", "Horizontal", "Vertical", "None", "ForceShow", "ForceHide", "None", "NoAccess", "Revoked", "UseView", "Edit", "Own", "Ball", "Block", "Cylinder", "Box", "Sphere", "Cylinder", "Disc", "Outward", "Inward", "InAndOut", "Volume", "Surface", "None", "Grid2x2", "Grid4x4", "Grid8x8", "Loop", "OneShot", "PingPong", "Random", "NotCompatible", "Compatible", "Unknown", "FacingCamera", "FacingCameraWorldUp", "VelocityParallel", "VelocityPerpendicular", "Success", "ClosestNoPath", "ClosestOutOfRange", "FailStartNotEmpty", "FailFinishNotEmpty", "NoPath", "Walk", "Jump", "Custom", "Game", "RobloxGame", "RobloxScript", "Studio", "Roblox", "Fixed240Hz", "Fixed120Hz", "Fixed60Hz", "Default", "Fixed", "Adaptive", "Windows", "OSX", "IOS", "Android", "XBoxOne", "PS4", "PS3", "XBox360", "WiiU", "NX", "Ouya", "AndroidTV", "Chromecast", "Linux", "SteamOS", "WebOS", "DOS", "BeOS", "UWP", "None", "Begin", "Delayed", "Playing", "Paused", "Completed", "Cancelled", "CharacterForward", "CharacterBackward", "CharacterLeft", "CharacterRight", "CharacterJump", "All", "Team", "Whisper", "Out", "InOut", "In", "Linear", "Constant", "Elastic", "Cubic", "Bounce", "OneAttachment", "TwoAttachment", "Owner", "Admin", "Member", "Visitor", "Banned", "AvatarShop", "AllowedGames", "AllGames", "NotProcessedYet", "PurchaseGranted", "Success", "PermissionDenied", "Timeout", "UploadFailed", "NoUserInput", "Ok", "Warning", "Error", "OnePerButton", "OneGlobally", "AlwaysShow", "Keyboard", "Gamepad", "Touch", "Default", "Custom", "Automatic", "Level01", "Level02", "Level03", "Level04", "Level05", "Level06", "Level07", "Level08", "Level09", "Level10", "Level11", "Level12", "Level13", "Level14", "Level15", "Level16", "Level17", "Level18", "Level19", "Level20", "Level21", "OuterBox", "InnerBox", "Exclude", "Include", "Default", "Disabled", "Enabled", "Automatic", "Precise", "Performance", "First", "Input", "Camera", "Character", "Last", "psnr", "diff", "Default", "Disabled", "Enabled", "Default", "Pixelated", "Standard", "Selection", "Hover", "Active", "Default", "RotationsReset", "Custom", "Default", "Done", "Go", "Next", "Search", "Send", "NoReverb", "GenericReverb", "PaddedCell", "Room", "Bathroom", "LivingRoom", "StoneRoom", "Auditorium", "ConcertHall", "Cave", "Arena", "Hangar", "CarpettedHallway", "Hallway", "StoneCorridor", "Alley", "Forest", "City", "Mountains", "Quarry", "Plain", "ParkingLot", "SewerPipe", "UnderWater", "Select", "Scale", "Rotate", "Move", "Transform", "ColorPicker", "MaterialPicker", "Group", "Ungroup", "None", "Default", "Rthro", "RthroNarrow", "R15", "Custom", "None", "Inverse", "Linear", "InverseTapered", "LinearSquare", "XYZ", "XZY", "YZX", "YXZ", "ZXY", "ZYX", "MovementRelative", "CameraRelative", "Default", "Disabled", "Enabled", "Legacy", "Server", "Client", "Plugin", "Aggregate", "Snapshot", "Hybrid", "None", "FullscreenExtension", "All", "Collectibles", "Premium", "BadThumbnailType", "BadYRotDeg", "BadFieldOfViewDeg", "BadDistanceScale", "Other", "SaveAll", "SaveWorld", "SaveGame", "Automatic", "QualityLevel1", "QualityLevel2", "QualityLevel3", "QualityLevel4", "QualityLevel5", "QualityLevel6", "QualityLevel7", "QualityLevel8", "QualityLevel9", "QualityLevel10", "Stretch", "Slice", "Tile", "Fit", "Crop", "ConsentAccepted", "InvalidScopes", "Timeout", "NoUserInput", "BackendError", "UnexpectedError", "InvalidArgument", "ConsentDenied", "None", "DeviceSafeInsets", "CoreUISafeInsets", "LandscapeLeft", "LandscapeRight", "LandscapeSensor", "Portrait", "Sensor", "None", "ScrollBar", "Always", "X", "Y", "XY", "Escape", "Stop", "Floor", "Ladder", "OnRead", "Manual", "Enabled", "Muted", "OnlineGame", "Always", "Off", "WithChildren", "Error", "Warning", "Information", "Hint", "Default", "Immediate", "Deferred", "AncestryDeferred", "RelativeXY", "RelativeXX", "RelativeYY", "Disabled", "PerIsland", "PerEdge", "Ascending", "Descending", "LayoutOrder", "Name", "Custom", "Insert", "Home", "End", "PageUp", "PageDown", "ChatHotkey", "TopLeft", "TopRight", "BottomLeft", "BottomRight", "Poison", "Confusion", "Default", "LowMemory", "Opportunistic", "Default", "Disabled", "MinimumRadiusPause", "PauseOutsideLoadedArea", "Default", "Disabled", "ClientPhysicsPause", "None", "CloseStudio", "CloseDoc", "Edit", "PlayClient", "PlayServer", "Standalone", "None", "Default", "Operator", "Number", "String", "Comment", "Keyword", "Builtin", "Method", "Property", "Nil", "Bool", "Function", "Local", "Self", "LuauKeyword", "FunctionName", "TODO", "Background", "SelectionText", "SelectionBackground", "FindSelectionBackground", "MatchingWordBackground", "Warning", "Error", "Info", "Hint", "Whitespace", "ActiveLine", "DebuggerCurrentLine", "DebuggerErrorLine", "Ruler", "Bracket", "MenuPrimaryText", "MenuSecondaryText", "MenuSelectedText", "MenuBackground", "MenuSelectedBackground", "MenuScrollbarBackground", "MenuScrollbarHandle", "MenuBorder", "DocViewCodeBackground", "RobloxDefault", "Extra1", "Extra2", "Custom", "MainBackground", "Titlebar", "Dropdown", "Tooltip", "Notification", "ScrollBar", "ScrollBarBackground", "TabBar", "Tab", "FilterButtonDefault", "FilterButtonHover", "FilterButtonChecked", "FilterButtonAccent", "FilterButtonBorder", "FilterButtonBorderAlt", "RibbonTab", "RibbonTabTopBar", "Button", "MainButton", "RibbonButton", "ViewPortBackground", "InputFieldBackground", "Item", "TableItem", "CategoryItem", "GameSettingsTableItem", "GameSettingsTooltip", "EmulatorBar", "EmulatorDropDown", "ColorPickerFrame", "CurrentMarker", "Border", "DropShadow", "Shadow", "Light", "Dark", "Mid", "MainText", "SubText", "TitlebarText", "BrightText", "DimmedText", "LinkText", "WarningText", "ErrorText", "InfoText", "SensitiveText", "ScriptSideWidget", "ScriptBackground", "ScriptText", "ScriptSelectionText", "ScriptSelectionBackground", "ScriptFindSelectionBackground", "ScriptMatchingWordSelectionBackground", "ScriptOperator", "ScriptNumber", "ScriptString", "ScriptComment", "ScriptKeyword", "ScriptBuiltInFunction", "ScriptWarning", "ScriptError", "ScriptInformation", "ScriptHint", "ScriptWhitespace", "ScriptRuler", "DocViewCodeBackground", "DebuggerCurrentLine", "DebuggerErrorLine", "ScriptEditorCurrentLine", "DiffFilePathText", "DiffTextHunkInfo", "DiffTextNoChange", "DiffTextAddition", "DiffTextDeletion", "DiffTextSeparatorBackground", "DiffTextNoChangeBackground", "DiffTextAdditionBackground", "DiffTextDeletionBackground", "DiffLineNum", "DiffLineNumSeparatorBackground", "DiffLineNumNoChangeBackground", "DiffLineNumAdditionBackground", "DiffLineNumDeletionBackground", "DiffFilePathBackground", "DiffFilePathBorder", "ChatIncomingBgColor", "ChatIncomingTextColor", "ChatOutgoingBgColor", "ChatOutgoingTextColor", "ChatModeratedMessageColor", "Separator", "ButtonBorder", "ButtonText", "InputFieldBorder", "CheckedFieldBackground", "CheckedFieldBorder", "CheckedFieldIndicator", "HeaderSection", "Midlight", "StatusBar", "DialogButton", "DialogButtonText", "DialogButtonBorder", "DialogMainButton", "DialogMainButtonText", "InfoBarWarningBackground", "InfoBarWarningText", "ScriptMethod", "ScriptProperty", "ScriptNil", "ScriptBool", "ScriptFunction", "ScriptLocal", "ScriptSelf", "ScriptLuauKeyword", "ScriptFunctionName", "ScriptTodo", "ScriptBracket", "AttributeCog", "Default", "Selected", "Pressed", "Disabled", "Hover", "AlternatingSupports", "BridgeStyleSupports", "NoSupports", "None", "Hinge", "SteppingMotor", "Motor", "Flat", "CurvedHorizontally", "FixedSize", "PixelsPerStud", "Smooth", "Glue", "Weld", "Studs", "Inlet", "Universal", "Hinge", "Motor", "SteppingMotor", "SmoothNoOutlines", "Right", "Left", "Up", "Down", "None", "RowMajor", "ColumnMajor", "Compatibility", "Voxel", "ShadowMap", "Legacy", "Future", "TeleportToSpawnByName", "TeleportToPlaceInstance", "TeleportToPrivateServer", "TeleportPartyAsync", "TeleportUnknown", "Success", "Failure", "GameNotFound", "GameEnded", "GameFull", "Unauthorized", "Flooded", "IsTeleporting", "RequestedFromServer", "Started", "WaitingForServer", "Failed", "InProgress", "ToPlace", "ToInstance", "ToReservedServer", "None", "Legacy", "Template", "Generate", "Import", "Convert", "EditAddTool", "EditSeaLevelTool", "EditReplaceTool", "RegionFillTool", "RegionPasteTool", "Other", "Top", "Side", "Bottom", "Unknown", "Success", "Sending", "TextFilterFailed", "Floodchecked", "InvalidPrivacySettings", "InvalidTextChannelPermissions", "MessageTooLong", "PublicChat", "PrivateChat", "Default", "NoSuggestions", "Number", "Email", "Phone", "Password", "PasswordShown", "Username", "OneTimePassword", "None", "AtEnd", "Left", "Center", "Right", "Top", "Center", "Bottom", "Stretch", "Wrap", "Static", "NonHumanoid", "NonHumanoidOrphaned", "Humanoid", "HumanoidOrphaned", "Auto", "PerCore1", "PerCore2", "PerCore3", "PerCore4", "Threads1", "Threads2", "Threads3", "Threads4", "Threads8", "Threads16", "Extreme", "ElevatedOnServer", "Default", "Size48x48", "Size180x180", "Size420x420", "Size60x60", "Size100x100", "Size150x150", "Size352x352", "HeadShot", "AvatarBust", "AvatarThumbnail", "Fast", "Benchmark", "Precise", "Top", "Center", "Bottom", "Default", "Follow", "Classic", "Orbital", "Default", "Thumbstick", "DPad", "Thumbpad", "ClickToMove", "DynamicThumbstick", "Ok", "NoService", "InitFailed", "NoVideo", "VideoError", "VideoNoPermission", "VideoUnsupported", "NoAudio", "AudioError", "AudioNoPermission", "Auto", "ForceDisabled", "ExtrapolateFacsAndPose", "ExtrapolateFacsOnly", "Auto", "ForceFalse", "ForceTrue", "Auto", "Force0", "Force1", "None", "Audio", "Video", "AudioVideo", "LODCameraRecommendDisable", "Unknown", "True", "False", "Canceled", "Completed", "Light", "Dark", "UiMessageError", "UiMessageInfo", "Default", "Preview", "Head", "LeftHand", "RightHand", "Floor", "Begin", "Change", "End", "Cancel", "None", "MouseButton1", "MouseButton2", "MouseButton3", "MouseWheel", "MouseMovement", "Touch", "Keyboard", "Focus", "Accelerometer", "Gyro", "Gamepad1", "Gamepad2", "Gamepad3", "Gamepad4", "Gamepad5", "Gamepad6", "Gamepad7", "Gamepad8", "TextInput", "InputMethod", "None", "Seated", "Standing", "NoOne", "OnlyFriends", "Anyone", "World", "Off", "Idle", "Visible", "Focused", "Stopping", "Undefined", "Left", "Right", "Touch", "VirtualThumbstick", "ABXY", "Line", "Plane", "Vector", "Center", "Top", "Bottom", "Left", "Right", "Large", "Small", "LeftTrigger", "RightTrigger", "LeftHand", "RightHand", "Default", "Disabled", "Enabled", "Recording", "Playing", "None", "Idle", "Joining", "JoiningRetry", "Joined", "Leaving", "Ended", "Failed", "Disabled", "Automatic", "Enabled", "NegX", "X", "NegY", "Y", "NegZ", "Z", "None", "Small", "Medium", "Strong", "Max", "Disabled", "EnabledPreserve", "EnabledOverride", "None", "BoundCage", "LayerCage", "BoundCageAndLinks", "Reference", "Rbf", "OuterCage", "ReferenceMeshAfterMorph", "HSROuterDetail", "HSROuter", "HSRInner", "HSRInnerReverse", "LayerCageFittedToBase", "LayerCageFittedToPrev", "None", "TargetCageOriginal", "TargetCageCompressed", "TargetCageInterface", "TargetLayerCageOriginal", "TargetLayerCageCompressed", "TargetLayerInterface", "Rbf", "OuterCageDetail", "Global", "Sibling"]

class ApiSecurityData(TypedDict):
	Read: ApiSecurityReadData
	Write: ApiSecurityWriteData

class ApiSerializationData(TypedDict):
	CanLoad: bool
	CanSave: bool

class ApiValueTypeData(TypedDict):
	Category: ApiValueCategory
	Name: ApiValueTypeName

class ApiMemberData(TypedDict):
	MemberType: ApiMemberType
	Name: str
	ThreadSafety: ApiThreadSafety

class ApiPropertyMemberData(ApiMemberData):
	Category: ApiPropertyCategory
	Serialization: ApiSerializationData
	Security: ApiSecurityData | Literal["None", "LocalUserSecurity", "PluginSecurity", "RobloxScriptSecurity", "RobloxSecurity"]
	Tags: list[ApiPropertyTag] | None
	ValueType: ApiValueTypeData

class ApiVariableData(TypedDict):
	Name: str
	Type: ApiValueTypeData
	Default: str | None

class ApiEventMemberData(TypedDict):
	Parameters: list[ApiVariableData]

class ApiFunctionCallbackMemberData(ApiEventMemberData):
	ReturnType: ApiVariableData

class ApiClassData(TypedDict):
	Members: Union[list[ApiFunctionCallbackMemberData], list[ApiPropertyMemberData], list[ApiEventMemberData]]
	MemoryCategory: ApiMemoryCategory
	Superclass: str
	Tags: list[ApiClassTag] | None

class ApiEnumItemData(TypedDict):
	Value: int
	Name: str

class ApiEnumData(TypedDict):
	Items: list[ApiEnumItemData]
	Name: str

class ApiData(TypedDict):
	Classes: list[ApiClassData]
	Enums: list[ApiEnumData]
	Version: ApiVersion

class BaseMemberData(TypedDict):
	name: str
	is_replicated: bool
	is_hidden: bool
	is_deprecated: bool
	is_browsable: bool
	is_scriptable: bool

class ParameterData(TypedDict):
	name: str
	type: str

class PropertyData(BaseMemberData):
	Type: str

class FunctionData(BaseMemberData):
	is_yielding: bool
	is_custom_lua_state: bool
	can_yield: bool
	parameters: list[ParameterData]
	return_type: str

class EventData(TypedDict):
	parameters: list[ParameterData]

class InstanceData(TypedDict):
	name: ApiClassTypeName
	path: str
	is_creatable: bool
	is_browsable: bool
	is_deprecated: bool
	properties: dict[str, PropertyData]
	functions: dict[str, FunctionData]
	events: dict[str, EventData]


ENUM_TREE = {
	"AccessoryType": {
		"Unknown": 0,
		"Hat": 1,
		"Hair": 2,
		"Face": 3,
		"Neck": 4,
		"Shoulder": 5,
		"Front": 6,
		"Back": 7,
		"Waist": 8,
		"TShirt": 9,
		"Shirt": 10,
		"Pants": 11,
		"Jacket": 12,
		"Sweater": 13,
		"Shorts": 14,
		"LeftShoe": 15,
		"RightShoe": 16,
		"DressSkirt": 17,
		"Eyebrow": 18,
		"Eyelash": 19,
	},
	"ActionType": {
		"Nothing": 0,
		"Pause": 1,
		"Lose": 2,
		"Draw": 3,
		"Win": 4,
	},
	"ActuatorRelativeTo": {
		"Attachment0": 0,
		"Attachment1": 1,
		"World": 2,
	},
	"ActuatorType": {
		"None": 0,
		"Motor": 1,
		"Servo": 2,
	},
	"AdPortalStatus": {
		"Invalid": 0,
		"Inactive": 1,
		"Active": 2,
	},
	"AdPortalType": {
		"Forward": 0,
		"Return": 1,
	},
	"AdShape": {
		"HorizontalRectangle": 1,
	},
	"AdTeleportMethod": {
		"Undefined": 0,
		"PortalForward": 1,
		"PortalReturn": 2,
		"InGameMenuBackButton": 3,
		"UIBackButton": 4,
	},
	"AdUnitStatus": {
		"Inactive": 0,
		"Active": 1,
	},
	"AdornCullingMode": {
		"Automatic": 0,
		"Never": 1,
	},
	"AlignType": {
		"Parallel": 0,
		"Perpendicular": 1,
	},
	"AlphaMode": {
		"Overlay": 0,
		"Transparency": 1,
	},
	"AnalyticsEconomyAction": {
		"Default": 0,
		"Acquire": 1,
		"Spend": 2,
	},
	"AnalyticsLogLevel": {
		"Trace": 0,
		"Debug": 1,
		"Information": 2,
		"Warning": 3,
		"Error": 4,
		"Fatal": 5,
	},
	"AnalyticsProgressionStatus": {
		"Default": 0,
		"Begin": 1,
		"Complete": 2,
		"Abandon": 3,
		"Fail": 4,
	},
	"AnimationPriority": {
		"Idle": 0,
		"Movement": 1,
		"Action": 2,
		"Action2": 3,
		"Action3": 4,
		"Action4": 5,
		"Core": 1000,
	},
	"AnimatorRetargetingMode": {
		"Default": 0,
		"Disabled": 1,
		"Enabled": 2,
	},
	"AppShellActionType": {
		"None": 0,
		"OpenApp": 1,
		"TapChatTab": 2,
		"TapConversationEntry": 3,
		"TapAvatarTab": 4,
		"ReadConversation": 5,
		"TapGamePageTab": 6,
		"TapHomePageTab": 7,
		"GamePageLoaded": 8,
		"HomePageLoaded": 9,
		"AvatarEditorPageLoaded": 10,
	},
	"AppShellFeature": {
		"None": 0,
		"Chat": 1,
		"AvatarEditor": 2,
		"GamePage": 3,
		"HomePage": 4,
		"More": 5,
		"Landing": 6,
	},
	"AppUpdateStatus": {
		"Unknown": 0,
		"NotSupported": 1,
		"Failed": 2,
		"NotAvailable": 3,
		"Available": 4,
	},
	"ApplyStrokeMode": {
		"Contextual": 0,
		"Border": 1,
	},
	"AspectType": {
		"FitWithinMaxSize": 0,
		"ScaleWithParentSize": 1,
	},
	"AssetFetchStatus": {
		"Success": 0,
		"Failure": 1,
		"None": 2,
		"Loading": 3,
		"TimedOut": 4,
	},
	"AssetType": {
		"Image": 1,
		"TShirt": 2,
		"Audio": 3,
		"Mesh": 4,
		"Lua": 5,
		"Hat": 8,
		"Place": 9,
		"Model": 10,
		"Shirt": 11,
		"Pants": 12,
		"Decal": 13,
		"Head": 17,
		"Face": 18,
		"Gear": 19,
		"Badge": 21,
		"Animation": 24,
		"Torso": 27,
		"RightArm": 28,
		"LeftArm": 29,
		"LeftLeg": 30,
		"RightLeg": 31,
		"Package": 32,
		"GamePass": 34,
		"Plugin": 38,
		"MeshPart": 40,
		"HairAccessory": 41,
		"FaceAccessory": 42,
		"NeckAccessory": 43,
		"ShoulderAccessory": 44,
		"FrontAccessory": 45,
		"BackAccessory": 46,
		"WaistAccessory": 47,
		"ClimbAnimation": 48,
		"DeathAnimation": 49,
		"FallAnimation": 50,
		"IdleAnimation": 51,
		"JumpAnimation": 52,
		"RunAnimation": 53,
		"SwimAnimation": 54,
		"WalkAnimation": 55,
		"PoseAnimation": 56,
		"MoodAnimation": 78,
		"EarAccessory": 57,
		"EyeAccessory": 58,
		"EmoteAnimation": 61,
		"Video": 62,
		"TShirtAccessory": 64,
		"ShirtAccessory": 65,
		"PantsAccessory": 66,
		"JacketAccessory": 67,
		"SweaterAccessory": 68,
		"ShortsAccessory": 69,
		"LeftShoeAccessory": 70,
		"RightShoeAccessory": 71,
		"DressSkirtAccessory": 72,
		"EyebrowAccessory": 76,
		"EyelashAccessory": 77,
		"DynamicHead": 79,
		"FontFamily": 73,
	},
	"AssetTypeVerification": {
		"Default": 1,
		"ClientOnly": 2,
		"Always": 3,
	},
	"AudioSubType": {
		"Music": 1,
		"SoundEffect": 2,
	},
	"AutoIndentRule": {
		"Off": 0,
		"Absolute": 1,
		"Relative": 2,
	},
	"AutomaticSize": {
		"None": 0,
		"X": 1,
		"Y": 2,
		"XY": 3,
	},
	"AvatarAssetType": {
		"TShirt": 2,
		"Hat": 8,
		"HairAccessory": 41,
		"FaceAccessory": 42,
		"NeckAccessory": 43,
		"ShoulderAccessory": 44,
		"FrontAccessory": 45,
		"BackAccessory": 46,
		"WaistAccessory": 47,
		"Shirt": 11,
		"Pants": 12,
		"Gear": 19,
		"Head": 17,
		"Face": 18,
		"Torso": 27,
		"RightArm": 28,
		"LeftArm": 29,
		"LeftLeg": 30,
		"RightLeg": 31,
		"ClimbAnimation": 48,
		"FallAnimation": 50,
		"IdleAnimation": 51,
		"JumpAnimation": 52,
		"RunAnimation": 53,
		"SwimAnimation": 54,
		"WalkAnimation": 55,
		"MoodAnimation": 78,
		"EmoteAnimation": 61,
		"TShirtAccessory": 64,
		"ShirtAccessory": 65,
		"PantsAccessory": 66,
		"JacketAccessory": 67,
		"SweaterAccessory": 68,
		"ShortsAccessory": 69,
		"LeftShoeAccessory": 70,
		"RightShoeAccessory": 71,
		"DressSkirtAccessory": 72,
		"EyebrowAccessory": 76,
		"EyelashAccessory": 77,
		"DynamicHead": 79,
	},
	"AvatarContextMenuOption": {
		"Friend": 0,
		"Chat": 1,
		"Emote": 2,
		"InspectMenu": 3,
	},
	"AvatarItemType": {
		"Asset": 1,
		"Bundle": 2,
	},
	"AvatarPromptResult": {
		"Success": 1,
		"PermissionDenied": 2,
		"Failed": 3,
	},
	"AvatarThumbnailCustomizationType": {
		"Closeup": 1,
		"FullBody": 2,
	},
	"AvatarUnificationMode": {
		"Default": 0,
		"Disabled": 1,
		"Enabled": 2,
	},
	"Axis": {
		"X": 0,
		"Y": 1,
		"Z": 2,
	},
	"BinType": {
		"Script": 0,
		"GameTool": 1,
		"Grab": 2,
		"Clone": 3,
		"Hammer": 4,
	},
	"BodyPart": {
		"Head": 0,
		"Torso": 1,
		"LeftArm": 2,
		"RightArm": 3,
		"LeftLeg": 4,
		"RightLeg": 5,
	},
	"BodyPartR15": {
		"Head": 0,
		"UpperTorso": 1,
		"LowerTorso": 2,
		"LeftFoot": 3,
		"LeftLowerLeg": 4,
		"LeftUpperLeg": 5,
		"RightFoot": 6,
		"RightLowerLeg": 7,
		"RightUpperLeg": 8,
		"LeftHand": 9,
		"LeftLowerArm": 10,
		"LeftUpperArm": 11,
		"RightHand": 12,
		"RightLowerArm": 13,
		"RightUpperArm": 14,
		"RootPart": 15,
		"Unknown": 17,
	},
	"BorderMode": {
		"Outline": 0,
		"Middle": 1,
		"Inset": 2,
	},
	"BreakReason": {
		"Other": 0,
		"Error": 1,
		"UserBreakpoint": 3,
		"SpecialBreakpoint": 2,
	},
	"BreakpointRemoveReason": {
		"Requested": 0,
		"ScriptChanged": 1,
		"ScriptRemoved": 2,
	},
	"BulkMoveMode": {
		"FireAllEvents": 0,
		"FireCFrameChanged": 1,
	},
	"BundleType": {
		"BodyParts": 1,
		"Animations": 2,
		"Shoes": 3,
		"DynamicHead": 4,
		"DynamicHeadAvatar": 5,
	},
	"Button": {
		"Jump": 32,
		"Dismount": 8,
	},
	"ButtonStyle": {
		"Custom": 0,
		"RobloxButtonDefault": 1,
		"RobloxButton": 2,
		"RobloxRoundButton": 3,
		"RobloxRoundDefaultButton": 4,
		"RobloxRoundDropdownButton": 5,
	},
	"CageType": {
		"Inner": 0,
		"Outer": 1,
	},
	"CameraMode": {
		"Classic": 0,
		"LockFirstPerson": 1,
	},
	"CameraPanMode": {
		"Classic": 0,
		"EdgeBump": 1,
	},
	"CameraType": {
		"Fixed": 0,
		"Watch": 2,
		"Attach": 1,
		"Track": 3,
		"Follow": 4,
		"Custom": 5,
		"Scriptable": 6,
		"Orbital": 7,
	},
	"CatalogCategoryFilter": {
		"None": 1,
		"Featured": 2,
		"Collectibles": 3,
		"CommunityCreations": 4,
		"Premium": 5,
		"Recommended": 6,
	},
	"CatalogSortAggregation": {
		"Past12Hours": 1,
		"PastDay": 2,
		"Past3Days": 3,
		"PastWeek": 4,
		"PastMonth": 5,
		"AllTime": 6,
	},
	"CatalogSortType": {
		"Relevance": 1,
		"PriceHighToLow": 2,
		"PriceLowToHigh": 3,
		"MostFavorited": 5,
		"RecentlyCreated": 6,
		"Bestselling": 7,
	},
	"CellBlock": {
		"Solid": 0,
		"VerticalWedge": 1,
		"CornerWedge": 2,
		"InverseCornerWedge": 3,
		"HorizontalWedge": 4,
	},
	"CellMaterial": {
		"Empty": 0,
		"Grass": 1,
		"Sand": 2,
		"Brick": 3,
		"Granite": 4,
		"Asphalt": 5,
		"Iron": 6,
		"Aluminum": 7,
		"Gold": 8,
		"WoodPlank": 9,
		"WoodLog": 10,
		"Gravel": 11,
		"CinderBlock": 12,
		"MossyStone": 13,
		"Cement": 14,
		"RedPlastic": 15,
		"BluePlastic": 16,
		"Water": 17,
	},
	"CellOrientation": {
		"NegZ": 0,
		"X": 1,
		"Z": 2,
		"NegX": 3,
	},
	"CenterDialogType": {
		"UnsolicitedDialog": 1,
		"PlayerInitiatedDialog": 2,
		"ModalDialog": 3,
		"QuitDialog": 4,
	},
	"ChatCallbackType": {
		"OnCreatingChatWindow": 1,
		"OnClientSendingMessage": 2,
		"OnClientFormattingMessage": 3,
		"OnServerReceivingMessage": 17,
	},
	"ChatColor": {
		"Blue": 0,
		"Green": 1,
		"Red": 2,
		"White": 3,
	},
	"ChatMode": {
		"Menu": 0,
		"TextAndMenu": 1,
	},
	"ChatPrivacyMode": {
		"AllUsers": 0,
		"NoOne": 1,
		"Friends": 2,
	},
	"ChatStyle": {
		"Classic": 0,
		"Bubble": 1,
		"ClassicAndBubble": 2,
	},
	"ChatVersion": {
		"LegacyChatService": 0,
		"TextChatService": 1,
	},
	"ClientAnimatorThrottlingMode": {
		"Default": 0,
		"Disabled": 1,
		"Enabled": 2,
	},
	"CollisionFidelity": {
		"Default": 0,
		"Hull": 1,
		"Box": 2,
		"PreciseConvexDecomposition": 3,
		"DynamicPreciseConvexDecomposition": 4,
	},
	"CommandPermission": {
		"Plugin": 0,
		"LocalUser": 1,
	},
	"CompletionItemKind": {
		"Text": 1,
		"Method": 2,
		"Function": 3,
		"Constructor": 4,
		"Field": 5,
		"Variable": 6,
		"Class": 7,
		"Interface": 8,
		"Module": 9,
		"Property": 10,
		"Unit": 11,
		"Value": 12,
		"Enum": 13,
		"Keyword": 14,
		"Snippet": 15,
		"Color": 16,
		"File": 17,
		"Reference": 18,
		"Folder": 19,
		"EnumMember": 20,
		"Constant": 21,
		"Struct": 22,
		"Event": 23,
		"Operator": 24,
		"TypeParameter": 25,
	},
	"CompletionItemTag": {
		"Deprecated": 1,
		"IncorrectIndexType": 2,
		"PluginPermissions": 3,
		"CommandLinePermissions": 4,
		"RobloxPermissions": 5,
		"AddParens": 6,
		"PutCursorInParens": 7,
		"TypeCorrect": 8,
		"ClientServerBoundaryViolation": 9,
	},
	"CompletionTriggerKind": {
		"Invoked": 1,
		"TriggerCharacter": 2,
		"TriggerForIncompleteCompletions": 3,
	},
	"ComputerCameraMovementMode": {
		"Default": 0,
		"Follow": 2,
		"Classic": 1,
		"Orbital": 3,
		"CameraToggle": 4,
	},
	"ComputerMovementMode": {
		"Default": 0,
		"KeyboardMouse": 1,
		"ClickToMove": 2,
	},
	"ConnectionError": {
		"OK": 0,
		"Unknown": 1,
		"DisconnectErrors": 256,
		"DisconnectBadhash": 257,
		"DisconnectSecurityKeyMismatch": 258,
		"DisconnectNewSecurityKeyMismatch": 272,
		"DisconnectProtocolMismatch": 259,
		"DisconnectReceivePacketError": 260,
		"DisconnectReceivePacketStreamError": 261,
		"DisconnectSendPacketError": 262,
		"DisconnectIllegalTeleport": 263,
		"DisconnectDuplicatePlayer": 264,
		"DisconnectDuplicateTicket": 265,
		"DisconnectTimeout": 266,
		"DisconnectLuaKick": 267,
		"DisconnectOnRemoteSysStats": 268,
		"DisconnectHashTimeout": 269,
		"DisconnectCloudEditKick": 270,
		"DisconnectPlayerless": 271,
		"DisconnectEvicted": 273,
		"DisconnectDevMaintenance": 274,
		"DisconnectRobloxMaintenance": 275,
		"DisconnectRejoin": 276,
		"DisconnectConnectionLost": 277,
		"DisconnectIdle": 278,
		"DisconnectRaknetErrors": 279,
		"DisconnectWrongVersion": 280,
		"DisconnectBySecurityPolicy": 281,
		"DisconnectBlockedIP": 282,
		"DisconnectClientFailure": 284,
		"DisconnectClientRequest": 285,
		"DisconnectModeratedGame": 287,
		"DisconnectRomarkEndOfTest": 293,
		"ReplicatorTimeout": 290,
		"PlayerRemoved": 291,
		"DisconnectOutOfMemoryKeepPlayingLeave": 292,
		"PlacelaunchErrors": 512,
		"PlacelaunchDisabled": 515,
		"PlacelaunchError": 516,
		"PlacelaunchGameEnded": 517,
		"PlacelaunchGameFull": 518,
		"PlacelaunchUserLeft": 522,
		"PlacelaunchRestricted": 523,
		"PlacelaunchUnauthorized": 524,
		"PlacelaunchFlooded": 525,
		"PlacelaunchHashExpired": 526,
		"PlacelaunchHashException": 527,
		"PlacelaunchPartyCannotFit": 528,
		"PlacelaunchHttpError": 529,
		"PlacelaunchUserPrivacyUnauthorized": 533,
		"PlacelaunchCustomMessage": 610,
		"PlacelaunchOtherError": 611,
		"TeleportErrors": 768,
		"TeleportFailure": 769,
		"TeleportGameNotFound": 770,
		"TeleportGameEnded": 771,
		"TeleportGameFull": 772,
		"TeleportUnauthorized": 773,
		"TeleportFlooded": 774,
		"TeleportIsTeleporting": 775,
	},
	"ConnectionState": {
		"Connected": 0,
		"Disconnected": 1,
	},
	"ContextActionPriority": {
		"Low": 1000,
		"Medium": 2000,
		"High": 3000,
	},
	"ContextActionResult": {
		"Pass": 1,
		"Sink": 0,
	},
	"ControlMode": {
		"MouseLockSwitch": 1,
		"Classic": 0,
	},
	"CoreGuiType": {
		"PlayerList": 0,
		"Health": 1,
		"Backpack": 2,
		"Chat": 3,
		"All": 4,
		"EmotesMenu": 5,
		"SelfView": 6,
	},
	"CreateOutfitFailure": {
		"InvalidName": 1,
		"OutfitLimitReached": 2,
		"Other": 3,
	},
	"CreatorType": {
		"User": 0,
		"Group": 1,
	},
	"CreatorTypeFilter": {
		"User": 0,
		"Group": 1,
		"All": 2,
	},
	"CurrencyType": {
		"Default": 0,
		"Robux": 1,
		"Tix": 2,
	},
	"CustomCameraMode": {
		"Default": 0,
		"Follow": 2,
		"Classic": 1,
	},
	"DataStoreRequestType": {
		"GetAsync": 0,
		"SetIncrementAsync": 1,
		"UpdateAsync": 2,
		"GetSortedAsync": 3,
		"SetIncrementSortedAsync": 4,
		"OnUpdate": 5,
	},
	"DebuggerEndReason": {
		"ClientRequest": 0,
		"Timeout": 1,
		"InvalidHost": 2,
		"Disconnected": 3,
		"ServerShutdown": 4,
		"ServerProtocolMismatch": 5,
		"ConfigurationFailed": 6,
		"RpcError": 7,
	},
	"DebuggerExceptionBreakMode": {
		"Never": 0,
		"Unhandled": 2,
		"Always": 1,
	},
	"DebuggerFrameType": {
		"C": 0,
		"Lua": 1,
	},
	"DebuggerPauseReason": {
		"Unknown": 0,
		"Requested": 1,
		"Breakpoint": 2,
		"Exception": 3,
		"SingleStep": 4,
		"Entrypoint": 5,
	},
	"DebuggerStatus": {
		"Success": 0,
		"Timeout": 1,
		"ConnectionLost": 2,
		"InvalidResponse": 3,
		"InternalError": 4,
		"InvalidState": 5,
		"RpcError": 6,
		"InvalidArgument": 7,
		"ConnectionClosed": 8,
	},
	"DevCameraOcclusionMode": {
		"Zoom": 0,
		"Invisicam": 1,
	},
	"DevComputerCameraMovementMode": {
		"UserChoice": 0,
		"Classic": 1,
		"Follow": 2,
		"Orbital": 3,
		"CameraToggle": 4,
	},
	"DevComputerMovementMode": {
		"UserChoice": 0,
		"KeyboardMouse": 1,
		"ClickToMove": 2,
		"Scriptable": 3,
	},
	"DevTouchCameraMovementMode": {
		"UserChoice": 0,
		"Classic": 1,
		"Follow": 2,
		"Orbital": 3,
	},
	"DevTouchMovementMode": {
		"UserChoice": 0,
		"Thumbstick": 1,
		"DPad": 2,
		"Thumbpad": 3,
		"ClickToMove": 4,
		"Scriptable": 5,
		"DynamicThumbstick": 6,
	},
	"DeveloperMemoryTag": {
		"Internal": 0,
		"HttpCache": 1,
		"Instances": 2,
		"Signals": 3,
		"LuaHeap": 4,
		"Script": 5,
		"PhysicsCollision": 6,
		"PhysicsParts": 7,
		"GraphicsSolidModels": 8,
		"GraphicsMeshParts": 10,
		"GraphicsParticles": 11,
		"GraphicsParts": 12,
		"GraphicsSpatialHash": 13,
		"GraphicsTerrain": 14,
		"GraphicsTexture": 15,
		"GraphicsTextureCharacter": 16,
		"Sounds": 17,
		"StreamingSounds": 18,
		"TerrainVoxels": 19,
		"Gui": 21,
		"Animation": 22,
		"Navigation": 23,
		"GeometryCSG": 24,
	},
	"DeviceType": {
		"Unknown": 0,
		"Desktop": 1,
		"Tablet": 2,
		"Phone": 3,
	},
	"DialogBehaviorType": {
		"SinglePlayer": 0,
		"MultiplePlayers": 1,
	},
	"DialogPurpose": {
		"Quest": 0,
		"Help": 1,
		"Shop": 2,
	},
	"DialogTone": {
		"Neutral": 0,
		"Friendly": 1,
		"Enemy": 2,
	},
	"DominantAxis": {
		"Width": 0,
		"Height": 1,
	},
	"DraftStatusCode": {
		"OK": 0,
		"DraftOutdated": 1,
		"ScriptRemoved": 2,
		"DraftCommitted": 3,
	},
	"DraggerCoordinateSpace": {
		"Object": 0,
		"World": 1,
	},
	"DraggerMovementMode": {
		"Geometric": 0,
		"Physical": 1,
	},
	"EasingDirection": {
		"In": 0,
		"Out": 1,
		"InOut": 2,
	},
	"EasingStyle": {
		"Linear": 0,
		"Sine": 1,
		"Back": 2,
		"Quad": 3,
		"Quart": 4,
		"Quint": 5,
		"Bounce": 6,
		"Elastic": 7,
		"Exponential": 8,
		"Circular": 9,
		"Cubic": 10,
	},
	"ElasticBehavior": {
		"WhenScrollable": 0,
		"Always": 1,
		"Never": 2,
	},
	"EnviromentalPhysicsThrottle": {
		"DefaultAuto": 0,
		"Disabled": 1,
		"Always": 2,
		"Skip2": 3,
		"Skip4": 4,
		"Skip8": 5,
		"Skip16": 6,
	},
	"ExperienceAuthScope": {
		"DefaultScope": 0,
		"CreatorAssetsCreate": 1,
	},
	"ExplosionType": {
		"NoCraters": 0,
		"Craters": 1,
	},
	"FacialAnimationFlags": {
		"None": 0,
		"Place": 1,
		"Server": 2,
		"PlaceServer": 3,
	},
	"FacialAnimationStreamingState": {
		"None": 0,
		"Audio": 1,
		"Video": 2,
		"Place": 4,
		"Server": 8,
	},
	"FieldOfViewMode": {
		"Vertical": 0,
		"Diagonal": 1,
		"MaxAxis": 2,
	},
	"FillDirection": {
		"Horizontal": 0,
		"Vertical": 1,
	},
	"FilterResult": {
		"Rejected": 1,
		"Accepted": 0,
	},
	"Font": {
		"Legacy": 0,
		"Arial": 1,
		"ArialBold": 2,
		"SourceSans": 3,
		"SourceSansBold": 4,
		"SourceSansSemibold": 16,
		"SourceSansLight": 5,
		"SourceSansItalic": 6,
		"Bodoni": 7,
		"Garamond": 8,
		"Cartoon": 9,
		"Code": 10,
		"Highway": 11,
		"SciFi": 12,
		"Arcade": 13,
		"Fantasy": 14,
		"Antique": 15,
		"Gotham": 17,
		"GothamMedium": 18,
		"GothamBold": 19,
		"GothamBlack": 20,
		"AmaticSC": 21,
		"Bangers": 22,
		"Creepster": 23,
		"DenkOne": 24,
		"Fondamento": 25,
		"FredokaOne": 26,
		"GrenzeGotisch": 27,
		"IndieFlower": 28,
		"JosefinSans": 29,
		"Jura": 30,
		"Kalam": 31,
		"LuckiestGuy": 32,
		"Merriweather": 33,
		"Michroma": 34,
		"Nunito": 35,
		"Oswald": 36,
		"PatrickHand": 37,
		"PermanentMarker": 38,
		"Roboto": 39,
		"RobotoCondensed": 40,
		"RobotoMono": 41,
		"Sarpanch": 42,
		"SpecialElite": 43,
		"TitilliumWeb": 44,
		"Ubuntu": 45,
		"Unknown": 100,
	},
	"FontSize": {
		"Size8": 0,
		"Size9": 1,
		"Size10": 2,
		"Size11": 3,
		"Size12": 4,
		"Size14": 5,
		"Size18": 6,
		"Size24": 7,
		"Size36": 8,
		"Size48": 9,
		"Size28": 10,
		"Size32": 11,
		"Size42": 12,
		"Size60": 13,
		"Size96": 14,
	},
	"FontStyle": {
		"Normal": 0,
		"Italic": 1,
	},
	"FontWeight": {
		"Thin": 100,
		"ExtraLight": 200,
		"Light": 300,
		"Regular": 400,
		"Medium": 500,
		"SemiBold": 600,
		"Bold": 700,
		"ExtraBold": 800,
		"Heavy": 900,
	},
	"FormFactor": {
		"Symmetric": 0,
		"Brick": 1,
		"Plate": 2,
		"Custom": 3,
	},
	"FrameStyle": {
		"Custom": 0,
		"ChatBlue": 1,
		"RobloxSquare": 2,
		"RobloxRound": 3,
		"ChatGreen": 4,
		"ChatRed": 5,
		"DropShadow": 6,
	},
	"FramerateManagerMode": {
		"Automatic": 0,
		"On": 1,
		"Off": 2,
	},
	"FriendRequestEvent": {
		"Issue": 0,
		"Revoke": 1,
		"Accept": 2,
		"Deny": 3,
	},
	"FriendStatus": {
		"Unknown": 0,
		"NotFriend": 1,
		"Friend": 2,
		"FriendRequestSent": 3,
		"FriendRequestReceived": 4,
	},
	"FunctionalTestResult": {
		"Passed": 0,
		"Warning": 1,
		"Error": 2,
	},
	"GameAvatarType": {
		"R6": 0,
		"R15": 1,
		"PlayerChoice": 2,
	},
	"GearGenreSetting": {
		"AllGenres": 0,
		"MatchingGenreOnly": 1,
	},
	"GearType": {
		"MeleeWeapons": 0,
		"RangedWeapons": 1,
		"Explosives": 2,
		"PowerUps": 3,
		"NavigationEnhancers": 4,
		"MusicalInstruments": 5,
		"SocialItems": 6,
		"BuildingTools": 7,
		"Transport": 8,
	},
	"Genre": {
		"All": 0,
		"TownAndCity": 1,
		"Fantasy": 2,
		"SciFi": 3,
		"Ninja": 4,
		"Scary": 5,
		"Pirate": 6,
		"Adventure": 7,
		"Sports": 8,
		"Funny": 9,
		"WildWest": 10,
		"War": 11,
		"SkatePark": 12,
		"Tutorial": 13,
	},
	"GraphicsMode": {
		"Automatic": 1,
		"Direct3D11": 2,
		"OpenGL": 4,
		"Metal": 5,
		"Vulkan": 6,
		"NoGraphics": 9,
	},
	"GuiType": {
		"Core": 0,
		"Custom": 1,
		"CustomBillboards": 3,
		"PlayerNameplates": 2,
	},
	"HandlesStyle": {
		"Resize": 0,
		"Movement": 1,
	},
	"HighlightDepthMode": {
		"AlwaysOnTop": 0,
		"Occluded": 1,
	},
	"HorizontalAlignment": {
		"Center": 0,
		"Left": 1,
		"Right": 2,
	},
	"HoverAnimateSpeed": {
		"VerySlow": 0,
		"Slow": 1,
		"Medium": 2,
		"Fast": 3,
		"VeryFast": 4,
	},
	"HttpCachePolicy": {
		"None": 0,
		"Full": 1,
		"DataOnly": 2,
		"Default": 3,
		"InternalRedirectRefresh": 4,
	},
	"HttpContentType": {
		"ApplicationJson": 0,
		"ApplicationXml": 1,
		"ApplicationUrlEncoded": 2,
		"TextPlain": 3,
		"TextXml": 4,
	},
	"HttpError": {
		"OK": 0,
		"InvalidUrl": 1,
		"DnsResolve": 2,
		"ConnectFail": 3,
		"OutOfMemory": 4,
		"TimedOut": 5,
		"TooManyRedirects": 6,
		"InvalidRedirect": 7,
		"NetFail": 8,
		"Aborted": 9,
		"SslConnectFail": 10,
		"SslVerificationFail": 11,
		"Unknown": 12,
	},
	"HttpRequestType": {
		"Default": 0,
		"MarketplaceService": 2,
		"Players": 7,
		"Chat": 15,
		"Avatar": 16,
		"Analytics": 23,
		"Localization": 25,
	},
	"HumanoidCollisionType": {
		"OuterBox": 0,
		"InnerBox": 1,
	},
	"HumanoidDisplayDistanceType": {
		"Viewer": 0,
		"Subject": 1,
		"None": 2,
	},
	"HumanoidHealthDisplayType": {
		"DisplayWhenDamaged": 0,
		"AlwaysOn": 1,
		"AlwaysOff": 2,
	},
	"HumanoidOnlySetCollisionsOnStateChange": {
		"Default": 0,
		"Disabled": 1,
		"Enabled": 2,
	},
	"HumanoidRigType": {
		"R6": 0,
		"R15": 1,
	},
	"HumanoidStateMachineMode": {
		"Default": 0,
		"Legacy": 1,
		"NoStateMachine": 2,
		"LuaStateMachine": 3,
	},
	"HumanoidStateType": {
		"FallingDown": 0,
		"Running": 8,
		"RunningNoPhysics": 10,
		"Climbing": 12,
		"StrafingNoPhysics": 11,
		"Ragdoll": 1,
		"GettingUp": 2,
		"Jumping": 3,
		"Landed": 7,
		"Flying": 6,
		"Freefall": 5,
		"Seated": 13,
		"PlatformStanding": 14,
		"Dead": 15,
		"Swimming": 4,
		"Physics": 16,
		"None": 18,
	},
	"IKCollisionsMode": {
		"NoCollisions": 0,
		"OtherMechanismsAnchored": 1,
		"IncludeContactedMechanisms": 2,
	},
	"IKControlType": {
		"Transform": 0,
		"Position": 1,
		"Rotation": 2,
		"LookAt": 3,
	},
	"IXPLoadingStatus": {
		"None": 0,
		"Pending": 1,
		"Initialized": 2,
		"ErrorTimedOut": 6,
		"ErrorConnection": 4,
		"ErrorJsonParse": 5,
		"ErrorInvalidUser": 3,
	},
	"InOut": {
		"Edge": 0,
		"Inset": 1,
		"Center": 2,
	},
	"InfoType": {
		"Asset": 0,
		"Product": 1,
		"GamePass": 2,
		"Subscription": 3,
		"Bundle": 4,
	},
	"InitialDockState": {
		"Top": 0,
		"Bottom": 1,
		"Left": 2,
		"Right": 3,
		"Float": 4,
	},
	"InputType": {
		"NoInput": 0,
		"Constant": 12,
		"Sin": 13,
	},
	"InterpolationThrottlingMode": {
		"Default": 0,
		"Disabled": 1,
		"Enabled": 2,
	},
	"JointCreationMode": {
		"All": 0,
		"Surface": 1,
		"None": 2,
	},
	"KeyCode": {
		"Unknown": 0,
		"Backspace": 8,
		"Tab": 9,
		"Clear": 12,
		"Return": 13,
		"Pause": 19,
		"Escape": 27,
		"Space": 32,
		"QuotedDouble": 34,
		"Hash": 35,
		"Dollar": 36,
		"Percent": 37,
		"Ampersand": 38,
		"Quote": 39,
		"LeftParenthesis": 40,
		"RightParenthesis": 41,
		"Asterisk": 42,
		"Plus": 43,
		"Comma": 44,
		"Minus": 45,
		"Period": 46,
		"Slash": 47,
		"Zero": 48,
		"One": 49,
		"Two": 50,
		"Three": 51,
		"Four": 52,
		"Five": 53,
		"Six": 54,
		"Seven": 55,
		"Eight": 56,
		"Nine": 57,
		"Colon": 58,
		"Semicolon": 59,
		"LessThan": 60,
		"Equals": 61,
		"GreaterThan": 62,
		"Question": 63,
		"At": 64,
		"LeftBracket": 91,
		"BackSlash": 92,
		"RightBracket": 93,
		"Caret": 94,
		"Underscore": 95,
		"Backquote": 96,
		"A": 97,
		"B": 98,
		"C": 99,
		"D": 100,
		"E": 101,
		"F": 102,
		"G": 103,
		"H": 104,
		"I": 105,
		"J": 106,
		"K": 107,
		"L": 108,
		"M": 109,
		"N": 110,
		"O": 111,
		"P": 112,
		"Q": 113,
		"R": 114,
		"S": 115,
		"T": 116,
		"U": 117,
		"V": 118,
		"W": 119,
		"X": 120,
		"Y": 121,
		"Z": 122,
		"LeftCurly": 123,
		"Pipe": 124,
		"RightCurly": 125,
		"Tilde": 126,
		"Delete": 127,
		"KeypadZero": 256,
		"KeypadOne": 257,
		"KeypadTwo": 258,
		"KeypadThree": 259,
		"KeypadFour": 260,
		"KeypadFive": 261,
		"KeypadSix": 262,
		"KeypadSeven": 263,
		"KeypadEight": 264,
		"KeypadNine": 265,
		"KeypadPeriod": 266,
		"KeypadDivide": 267,
		"KeypadMultiply": 268,
		"KeypadMinus": 269,
		"KeypadPlus": 270,
		"KeypadEnter": 271,
		"KeypadEquals": 272,
		"Up": 273,
		"Down": 274,
		"Right": 275,
		"Left": 276,
		"Insert": 277,
		"Home": 278,
		"End": 279,
		"PageUp": 280,
		"PageDown": 281,
		"LeftShift": 304,
		"RightShift": 303,
		"LeftMeta": 310,
		"RightMeta": 309,
		"LeftAlt": 308,
		"RightAlt": 307,
		"LeftControl": 306,
		"RightControl": 305,
		"CapsLock": 301,
		"NumLock": 300,
		"ScrollLock": 302,
		"LeftSuper": 311,
		"RightSuper": 312,
		"Mode": 313,
		"Compose": 314,
		"Help": 315,
		"Print": 316,
		"SysReq": 317,
		"Break": 318,
		"Menu": 319,
		"Power": 320,
		"Euro": 321,
		"Undo": 322,
		"F1": 282,
		"F2": 283,
		"F3": 284,
		"F4": 285,
		"F5": 286,
		"F6": 287,
		"F7": 288,
		"F8": 289,
		"F9": 290,
		"F10": 291,
		"F11": 292,
		"F12": 293,
		"F13": 294,
		"F14": 295,
		"F15": 296,
		"World0": 160,
		"World1": 161,
		"World2": 162,
		"World3": 163,
		"World4": 164,
		"World5": 165,
		"World6": 166,
		"World7": 167,
		"World8": 168,
		"World9": 169,
		"World10": 170,
		"World11": 171,
		"World12": 172,
		"World13": 173,
		"World14": 174,
		"World15": 175,
		"World16": 176,
		"World17": 177,
		"World18": 178,
		"World19": 179,
		"World20": 180,
		"World21": 181,
		"World22": 182,
		"World23": 183,
		"World24": 184,
		"World25": 185,
		"World26": 186,
		"World27": 187,
		"World28": 188,
		"World29": 189,
		"World30": 190,
		"World31": 191,
		"World32": 192,
		"World33": 193,
		"World34": 194,
		"World35": 195,
		"World36": 196,
		"World37": 197,
		"World38": 198,
		"World39": 199,
		"World40": 200,
		"World41": 201,
		"World42": 202,
		"World43": 203,
		"World44": 204,
		"World45": 205,
		"World46": 206,
		"World47": 207,
		"World48": 208,
		"World49": 209,
		"World50": 210,
		"World51": 211,
		"World52": 212,
		"World53": 213,
		"World54": 214,
		"World55": 215,
		"World56": 216,
		"World57": 217,
		"World58": 218,
		"World59": 219,
		"World60": 220,
		"World61": 221,
		"World62": 222,
		"World63": 223,
		"World64": 224,
		"World65": 225,
		"World66": 226,
		"World67": 227,
		"World68": 228,
		"World69": 229,
		"World70": 230,
		"World71": 231,
		"World72": 232,
		"World73": 233,
		"World74": 234,
		"World75": 235,
		"World76": 236,
		"World77": 237,
		"World78": 238,
		"World79": 239,
		"World80": 240,
		"World81": 241,
		"World82": 242,
		"World83": 243,
		"World84": 244,
		"World85": 245,
		"World86": 246,
		"World87": 247,
		"World88": 248,
		"World89": 249,
		"World90": 250,
		"World91": 251,
		"World92": 252,
		"World93": 253,
		"World94": 254,
		"World95": 255,
		"ButtonX": 1000,
		"ButtonY": 1001,
		"ButtonA": 1002,
		"ButtonB": 1003,
		"ButtonR1": 1004,
		"ButtonL1": 1005,
		"ButtonR2": 1006,
		"ButtonL2": 1007,
		"ButtonR3": 1008,
		"ButtonL3": 1009,
		"ButtonStart": 1010,
		"ButtonSelect": 1011,
		"DPadLeft": 1012,
		"DPadRight": 1013,
		"DPadUp": 1014,
		"DPadDown": 1015,
		"Thumbstick1": 1016,
		"Thumbstick2": 1017,
	},
	"KeyInterpolationMode": {
		"Constant": 0,
		"Linear": 1,
		"Cubic": 2,
	},
	"KeywordFilterType": {
		"Include": 0,
		"Exclude": 1,
	},
	"Language": {
		"Default": 0,
	},
	"LeftRight": {
		"Left": 0,
		"Center": 1,
		"Right": 2,
	},
	"Limb": {
		"Head": 0,
		"Torso": 1,
		"LeftArm": 2,
		"RightArm": 3,
		"LeftLeg": 4,
		"RightLeg": 5,
		"Unknown": 6,
	},
	"LineJoinMode": {
		"Round": 0,
		"Bevel": 1,
		"Miter": 2,
	},
	"ListDisplayMode": {
		"Horizontal": 0,
		"Vertical": 1,
	},
	"ListenerType": {
		"Camera": 0,
		"CFrame": 1,
		"ObjectPosition": 2,
		"ObjectCFrame": 3,
	},
	"LoadCharacterLayeredClothing": {
		"Default": 0,
		"Disabled": 1,
		"Enabled": 2,
	},
	"LoadDynamicHeads": {
		"Default": 0,
		"Disabled": 1,
		"Enabled": 2,
	},
	"MarkupKind": {
		"PlainText": 0,
		"Markdown": 1,
	},
	"Material": {
		"Plastic": 256,
		"Wood": 512,
		"Slate": 800,
		"Concrete": 816,
		"CorrodedMetal": 1040,
		"DiamondPlate": 1056,
		"Foil": 1072,
		"Grass": 1280,
		"Ice": 1536,
		"Marble": 784,
		"Granite": 832,
		"Brick": 848,
		"Pebble": 864,
		"Sand": 1296,
		"Fabric": 1312,
		"SmoothPlastic": 272,
		"Metal": 1088,
		"WoodPlanks": 528,
		"Cobblestone": 880,
		"Air": 1792,
		"Water": 2048,
		"Rock": 896,
		"Glacier": 1552,
		"Snow": 1328,
		"Sandstone": 912,
		"Mud": 1344,
		"Basalt": 788,
		"Ground": 1360,
		"CrackedLava": 804,
		"Neon": 288,
		"Glass": 1568,
		"Asphalt": 1376,
		"LeafyGrass": 1284,
		"Salt": 1392,
		"Limestone": 820,
		"Pavement": 836,
		"ForceField": 1584,
	},
	"MaterialPattern": {
		"Regular": 0,
		"Organic": 1,
	},
	"MembershipType": {
		"None": 0,
		"BuildersClub": 1,
		"TurboBuildersClub": 2,
		"OutrageousBuildersClub": 3,
		"Premium": 4,
	},
	"MeshPartDetailLevel": {
		"DistanceBased": 0,
		"Level00": 1,
		"Level01": 2,
		"Level02": 3,
		"Level03": 4,
		"Level04": 5,
	},
	"MeshPartHeadsAndAccessories": {
		"Default": 0,
		"Disabled": 1,
		"Enabled": 2,
	},
	"MeshScaleUnit": {
		"Stud": 0,
		"Meter": 1,
		"CM": 2,
		"MM": 3,
		"Foot": 4,
		"Inch": 5,
	},
	"MeshType": {
		"Head": 0,
		"Torso": 1,
		"Wedge": 2,
		"Prism": 7,
		"Pyramid": 8,
		"ParallelRamp": 9,
		"RightAngleRamp": 10,
		"CornerWedge": 11,
		"Brick": 6,
		"Sphere": 3,
		"Cylinder": 4,
		"FileMesh": 5,
	},
	"MessageType": {
		"MessageOutput": 0,
		"MessageInfo": 1,
		"MessageWarning": 2,
		"MessageError": 3,
	},
	"ModelLevelOfDetail": {
		"Automatic": 0,
		"StreamingMesh": 1,
		"Disabled": 2,
	},
	"ModelStreamingMode": {
		"Default": 0,
		"Atomic": 1,
		"Persistent": 2,
		"PersistentPerPlayer": 3,
		"Nonatomic": 4,
	},
	"ModifierKey": {
		"Alt": 2,
		"Ctrl": 1,
		"Meta": 3,
		"Shift": 0,
	},
	"MouseBehavior": {
		"Default": 0,
		"LockCenter": 1,
		"LockCurrentPosition": 2,
	},
	"MoveState": {
		"Stopped": 0,
		"Coasting": 1,
		"Pushing": 2,
		"Stopping": 3,
		"AirFree": 4,
	},
	"MuteState": {
		"Unmuted": 0,
		"Muted": 1,
	},
	"NameOcclusion": {
		"OccludeAll": 2,
		"EnemyOcclusion": 1,
		"NoOcclusion": 0,
	},
	"NetworkOwnership": {
		"Automatic": 0,
		"Manual": 1,
		"OnContact": 2,
	},
	"NormalId": {
		"Top": 1,
		"Bottom": 4,
		"Back": 2,
		"Front": 5,
		"Right": 0,
		"Left": 3,
	},
	"OrientationAlignmentMode": {
		"OneAttachment": 0,
		"TwoAttachment": 1,
	},
	"OutfitSource": {
		"All": 1,
		"Created": 2,
		"Purchased": 3,
	},
	"OutfitType": {
		"All": 1,
		"Avatar": 2,
		"DynamicHead": 3,
	},
	"OutputLayoutMode": {
		"Horizontal": 0,
		"Vertical": 1,
	},
	"OverrideMouseIconBehavior": {
		"None": 0,
		"ForceShow": 1,
		"ForceHide": 2,
	},
	"PackagePermission": {
		"None": 0,
		"NoAccess": 1,
		"Revoked": 2,
		"UseView": 3,
		"Edit": 4,
		"Own": 5,
	},
	"PartType": {
		"Ball": 0,
		"Block": 1,
		"Cylinder": 2,
	},
	"ParticleEmitterShape": {
		"Box": 0,
		"Sphere": 1,
		"Cylinder": 2,
		"Disc": 3,
	},
	"ParticleEmitterShapeInOut": {
		"Outward": 0,
		"Inward": 1,
		"InAndOut": 2,
	},
	"ParticleEmitterShapeStyle": {
		"Volume": 0,
		"Surface": 1,
	},
	"ParticleFlipbookLayout": {
		"None": 0,
		"Grid2x2": 1,
		"Grid4x4": 2,
		"Grid8x8": 3,
	},
	"ParticleFlipbookMode": {
		"Loop": 0,
		"OneShot": 1,
		"PingPong": 2,
		"Random": 3,
	},
	"ParticleFlipbookTextureCompatible": {
		"NotCompatible": 0,
		"Compatible": 1,
		"Unknown": 2,
	},
	"ParticleOrientation": {
		"FacingCamera": 0,
		"FacingCameraWorldUp": 1,
		"VelocityParallel": 2,
		"VelocityPerpendicular": 3,
	},
	"PathStatus": {
		"Success": 0,
		"ClosestNoPath": 1,
		"ClosestOutOfRange": 2,
		"FailStartNotEmpty": 3,
		"FailFinishNotEmpty": 4,
		"NoPath": 5,
	},
	"PathWaypointAction": {
		"Walk": 0,
		"Jump": 1,
		"Custom": 2,
	},
	"PermissionLevelShown": {
		"Game": 0,
		"RobloxGame": 1,
		"RobloxScript": 2,
		"Studio": 3,
		"Roblox": 4,
	},
	"PhysicsSimulationRate": {
		"Fixed240Hz": 0,
		"Fixed120Hz": 1,
		"Fixed60Hz": 2,
	},
	"PhysicsSteppingMethod": {
		"Default": 0,
		"Fixed": 1,
		"Adaptive": 2,
	},
	"Platform": {
		"Windows": 0,
		"OSX": 1,
		"IOS": 2,
		"Android": 3,
		"XBoxOne": 4,
		"PS4": 5,
		"PS3": 6,
		"XBox360": 7,
		"WiiU": 8,
		"NX": 9,
		"Ouya": 10,
		"AndroidTV": 11,
		"Chromecast": 12,
		"Linux": 13,
		"SteamOS": 14,
		"WebOS": 15,
		"DOS": 16,
		"BeOS": 17,
		"UWP": 18,
		"None": 20,
	},
	"PlaybackState": {
		"Begin": 0,
		"Delayed": 1,
		"Playing": 2,
		"Paused": 3,
		"Completed": 4,
		"Cancelled": 5,
	},
	"PlayerActions": {
		"CharacterForward": 0,
		"CharacterBackward": 1,
		"CharacterLeft": 2,
		"CharacterRight": 3,
		"CharacterJump": 4,
	},
	"PlayerChatType": {
		"All": 0,
		"Team": 1,
		"Whisper": 2,
	},
	"PoseEasingDirection": {
		"Out": 1,
		"InOut": 2,
		"In": 0,
	},
	"PoseEasingStyle": {
		"Linear": 0,
		"Constant": 1,
		"Elastic": 2,
		"Cubic": 3,
		"Bounce": 4,
	},
	"PositionAlignmentMode": {
		"OneAttachment": 0,
		"TwoAttachment": 1,
	},
	"PrivilegeType": {
		"Owner": 255,
		"Admin": 240,
		"Member": 128,
		"Visitor": 10,
		"Banned": 0,
	},
	"ProductLocationRestriction": {
		"AvatarShop": 0,
		"AllowedGames": 1,
		"AllGames": 2,
	},
	"ProductPurchaseDecision": {
		"NotProcessedYet": 0,
		"PurchaseGranted": 1,
	},
	"PromptPublishAssetResult": {
		"Success": 1,
		"PermissionDenied": 2,
		"Timeout": 3,
		"UploadFailed": 4,
		"NoUserInput": 5,
	},
	"PropertyStatus": {
		"Ok": 0,
		"Warning": 1,
		"Error": 2,
	},
	"ProximityPromptExclusivity": {
		"OnePerButton": 0,
		"OneGlobally": 1,
		"AlwaysShow": 2,
	},
	"ProximityPromptInputType": {
		"Keyboard": 0,
		"Gamepad": 1,
		"Touch": 2,
	},
	"ProximityPromptStyle": {
		"Default": 0,
		"Custom": 1,
	},
	"QualityLevel": {
		"Automatic": 0,
		"Level01": 1,
		"Level02": 2,
		"Level03": 3,
		"Level04": 4,
		"Level05": 5,
		"Level06": 6,
		"Level07": 7,
		"Level08": 8,
		"Level09": 9,
		"Level10": 10,
		"Level11": 11,
		"Level12": 12,
		"Level13": 13,
		"Level14": 14,
		"Level15": 15,
		"Level16": 16,
		"Level17": 17,
		"Level18": 18,
		"Level19": 19,
		"Level20": 20,
		"Level21": 21,
	},
	"R15CollisionType": {
		"OuterBox": 0,
		"InnerBox": 1,
	},
	"RaycastFilterType": {
		"Exclude": 0,
		"Include": 1,
	},
	"RejectCharacterDeletions": {
		"Default": 0,
		"Disabled": 1,
		"Enabled": 2,
	},
	"RenderFidelity": {
		"Automatic": 0,
		"Precise": 1,
		"Performance": 2,
	},
	"RenderPriority": {
		"First": 0,
		"Input": 100,
		"Camera": 200,
		"Character": 300,
		"Last": 2000,
	},
	"RenderingTestComparisonMethod": {
		"psnr": 0,
		"diff": 1,
	},
	"ReplicateInstanceDestroySetting": {
		"Default": 0,
		"Disabled": 1,
		"Enabled": 2,
	},
	"ResamplerMode": {
		"Default": 0,
		"Pixelated": 1,
	},
	"ReservedHighlightId": {
		"Standard": 0,
		"Selection": 524288,
		"Hover": 262144,
		"Active": 131072,
	},
	"RestPose": {
		"Default": 0,
		"RotationsReset": 1,
		"Custom": 2,
	},
	"ReturnKeyType": {
		"Default": 0,
		"Done": 1,
		"Go": 2,
		"Next": 3,
		"Search": 4,
		"Send": 5,
	},
	"ReverbType": {
		"NoReverb": 0,
		"GenericReverb": 1,
		"PaddedCell": 2,
		"Room": 3,
		"Bathroom": 4,
		"LivingRoom": 5,
		"StoneRoom": 6,
		"Auditorium": 7,
		"ConcertHall": 8,
		"Cave": 9,
		"Arena": 10,
		"Hangar": 11,
		"CarpettedHallway": 12,
		"Hallway": 13,
		"StoneCorridor": 14,
		"Alley": 15,
		"Forest": 16,
		"City": 17,
		"Mountains": 18,
		"Quarry": 19,
		"Plain": 20,
		"ParkingLot": 21,
		"SewerPipe": 22,
		"UnderWater": 23,
	},
	"RibbonTool": {
		"Select": 0,
		"Scale": 1,
		"Rotate": 2,
		"Move": 3,
		"Transform": 4,
		"ColorPicker": 5,
		"MaterialPicker": 6,
		"Group": 7,
		"Ungroup": 8,
		"None": 9,
	},
	"RigScale": {
		"Default": 0,
		"Rthro": 1,
		"RthroNarrow": 2,
	},
	"RigType": {
		"R15": 0,
		"Custom": 1,
		"None": 2,
	},
	"RollOffMode": {
		"Inverse": 0,
		"Linear": 1,
		"InverseTapered": 3,
		"LinearSquare": 2,
	},
	"RotationOrder": {
		"XYZ": 0,
		"XZY": 1,
		"YZX": 2,
		"YXZ": 3,
		"ZXY": 4,
		"ZYX": 5,
	},
	"RotationType": {
		"MovementRelative": 0,
		"CameraRelative": 1,
	},
	"RtlTextSupport": {
		"Default": 0,
		"Disabled": 1,
		"Enabled": 2,
	},
	"RunContext": {
		"Legacy": 0,
		"Server": 1,
		"Client": 2,
		"Plugin": 3,
	},
	"RuntimeUndoBehavior": {
		"Aggregate": 0,
		"Snapshot": 1,
		"Hybrid": 2,
	},
	"SafeAreaCompatibility": {
		"None": 0,
		"FullscreenExtension": 1,
	},
	"SalesTypeFilter": {
		"All": 1,
		"Collectibles": 2,
		"Premium": 3,
	},
	"SaveAvatarThumbnailCustomizationFailure": {
		"BadThumbnailType": 1,
		"BadYRotDeg": 2,
		"BadFieldOfViewDeg": 3,
		"BadDistanceScale": 4,
		"Other": 5,
	},
	"SaveFilter": {
		"SaveAll": 2,
		"SaveWorld": 0,
		"SaveGame": 1,
	},
	"SavedQualitySetting": {
		"Automatic": 0,
		"QualityLevel1": 1,
		"QualityLevel2": 2,
		"QualityLevel3": 3,
		"QualityLevel4": 4,
		"QualityLevel5": 5,
		"QualityLevel6": 6,
		"QualityLevel7": 7,
		"QualityLevel8": 8,
		"QualityLevel9": 9,
		"QualityLevel10": 10,
	},
	"ScaleType": {
		"Stretch": 0,
		"Slice": 1,
		"Tile": 2,
		"Fit": 3,
		"Crop": 4,
	},
	"ScopeCheckResult": {
		"ConsentAccepted": 0,
		"InvalidScopes": 1,
		"Timeout": 2,
		"NoUserInput": 3,
		"BackendError": 4,
		"UnexpectedError": 5,
		"InvalidArgument": 6,
		"ConsentDenied": 7,
	},
	"ScreenInsets": {
		"None": 0,
		"DeviceSafeInsets": 1,
		"CoreUISafeInsets": 2,
	},
	"ScreenOrientation": {
		"LandscapeLeft": 0,
		"LandscapeRight": 1,
		"LandscapeSensor": 2,
		"Portrait": 3,
		"Sensor": 4,
	},
	"ScrollBarInset": {
		"None": 0,
		"ScrollBar": 1,
		"Always": 2,
	},
	"ScrollingDirection": {
		"X": 1,
		"Y": 2,
		"XY": 4,
	},
	"SelectionBehavior": {
		"Escape": 0,
		"Stop": 1,
	},
	"SensorMode": {
		"Floor": 0,
		"Ladder": 1,
	},
	"SensorUpdateType": {
		"OnRead": 0,
		"Manual": 1,
	},
	"ServerAudioBehavior": {
		"Enabled": 0,
		"Muted": 1,
		"OnlineGame": 2,
	},
	"ServiceVisibility": {
		"Always": 0,
		"Off": 1,
		"WithChildren": 2,
	},
	"Severity": {
		"Error": 1,
		"Warning": 2,
		"Information": 3,
		"Hint": 4,
	},
	"SignalBehavior": {
		"Default": 0,
		"Immediate": 1,
		"Deferred": 2,
		"AncestryDeferred": 3,
	},
	"SizeConstraint": {
		"RelativeXY": 0,
		"RelativeXX": 1,
		"RelativeYY": 2,
	},
	"SolverConvergenceVisualizationMode": {
		"Disabled": 0,
		"PerIsland": 1,
		"PerEdge": 2,
	},
	"SortDirection": {
		"Ascending": 0,
		"Descending": 1,
	},
	"SortOrder": {
		"LayoutOrder": 2,
		"Name": 0,
		"Custom": 1,
	},
	"SpecialKey": {
		"Insert": 0,
		"Home": 1,
		"End": 2,
		"PageUp": 3,
		"PageDown": 4,
		"ChatHotkey": 5,
	},
	"StartCorner": {
		"TopLeft": 0,
		"TopRight": 1,
		"BottomLeft": 2,
		"BottomRight": 3,
	},
	"Status": {
		"Poison": 0,
		"Confusion": 1,
	},
	"StreamOutBehavior": {
		"Default": 0,
		"LowMemory": 1,
		"Opportunistic": 2,
	},
	"StreamingIntegrityMode": {
		"Default": 0,
		"Disabled": 1,
		"MinimumRadiusPause": 2,
		"PauseOutsideLoadedArea": 3,
	},
	"StreamingPauseMode": {
		"Default": 0,
		"Disabled": 1,
		"ClientPhysicsPause": 2,
	},
	"StudioCloseMode": {
		"None": 0,
		"CloseStudio": 1,
		"CloseDoc": 2,
	},
	"StudioDataModelType": {
		"Edit": 0,
		"PlayClient": 1,
		"PlayServer": 2,
		"Standalone": 3,
		"None": 4,
	},
	"StudioScriptEditorColorCategories": {
		"Default": 0,
		"Operator": 1,
		"Number": 2,
		"String": 3,
		"Comment": 4,
		"Keyword": 5,
		"Builtin": 6,
		"Method": 7,
		"Property": 8,
		"Nil": 9,
		"Bool": 10,
		"Function": 11,
		"Local": 12,
		"Self": 13,
		"LuauKeyword": 14,
		"FunctionName": 15,
		"TODO": 16,
		"Background": 17,
		"SelectionText": 18,
		"SelectionBackground": 19,
		"FindSelectionBackground": 20,
		"MatchingWordBackground": 21,
		"Warning": 22,
		"Error": 23,
		"Info": 24,
		"Hint": 25,
		"Whitespace": 26,
		"ActiveLine": 27,
		"DebuggerCurrentLine": 28,
		"DebuggerErrorLine": 29,
		"Ruler": 30,
		"Bracket": 31,
		"MenuPrimaryText": 32,
		"MenuSecondaryText": 33,
		"MenuSelectedText": 34,
		"MenuBackground": 35,
		"MenuSelectedBackground": 36,
		"MenuScrollbarBackground": 37,
		"MenuScrollbarHandle": 38,
		"MenuBorder": 39,
		"DocViewCodeBackground": 40,
	},
	"StudioScriptEditorColorPresets": {
		"RobloxDefault": 0,
		"Extra1": 1,
		"Extra2": 2,
		"Custom": 3,
	},
	"StudioStyleGuideColor": {
		"MainBackground": 0,
		"Titlebar": 1,
		"Dropdown": 2,
		"Tooltip": 3,
		"Notification": 4,
		"ScrollBar": 5,
		"ScrollBarBackground": 6,
		"TabBar": 7,
		"Tab": 8,
		"FilterButtonDefault": 9,
		"FilterButtonHover": 10,
		"FilterButtonChecked": 11,
		"FilterButtonAccent": 12,
		"FilterButtonBorder": 13,
		"FilterButtonBorderAlt": 14,
		"RibbonTab": 15,
		"RibbonTabTopBar": 16,
		"Button": 17,
		"MainButton": 18,
		"RibbonButton": 19,
		"ViewPortBackground": 20,
		"InputFieldBackground": 21,
		"Item": 22,
		"TableItem": 23,
		"CategoryItem": 24,
		"GameSettingsTableItem": 25,
		"GameSettingsTooltip": 26,
		"EmulatorBar": 27,
		"EmulatorDropDown": 28,
		"ColorPickerFrame": 29,
		"CurrentMarker": 30,
		"Border": 31,
		"DropShadow": 32,
		"Shadow": 33,
		"Light": 34,
		"Dark": 35,
		"Mid": 36,
		"MainText": 37,
		"SubText": 38,
		"TitlebarText": 39,
		"BrightText": 40,
		"DimmedText": 41,
		"LinkText": 42,
		"WarningText": 43,
		"ErrorText": 44,
		"InfoText": 45,
		"SensitiveText": 46,
		"ScriptSideWidget": 47,
		"ScriptBackground": 48,
		"ScriptText": 49,
		"ScriptSelectionText": 50,
		"ScriptSelectionBackground": 51,
		"ScriptFindSelectionBackground": 52,
		"ScriptMatchingWordSelectionBackground": 53,
		"ScriptOperator": 54,
		"ScriptNumber": 55,
		"ScriptString": 56,
		"ScriptComment": 57,
		"ScriptKeyword": 58,
		"ScriptBuiltInFunction": 59,
		"ScriptWarning": 60,
		"ScriptError": 61,
		"ScriptInformation": 62,
		"ScriptHint": 63,
		"ScriptWhitespace": 64,
		"ScriptRuler": 65,
		"DocViewCodeBackground": 66,
		"DebuggerCurrentLine": 67,
		"DebuggerErrorLine": 68,
		"ScriptEditorCurrentLine": 107,
		"DiffFilePathText": 69,
		"DiffTextHunkInfo": 70,
		"DiffTextNoChange": 71,
		"DiffTextAddition": 72,
		"DiffTextDeletion": 73,
		"DiffTextSeparatorBackground": 74,
		"DiffTextNoChangeBackground": 75,
		"DiffTextAdditionBackground": 76,
		"DiffTextDeletionBackground": 77,
		"DiffLineNum": 78,
		"DiffLineNumSeparatorBackground": 79,
		"DiffLineNumNoChangeBackground": 80,
		"DiffLineNumAdditionBackground": 81,
		"DiffLineNumDeletionBackground": 82,
		"DiffFilePathBackground": 83,
		"DiffFilePathBorder": 84,
		"ChatIncomingBgColor": 85,
		"ChatIncomingTextColor": 86,
		"ChatOutgoingBgColor": 87,
		"ChatOutgoingTextColor": 88,
		"ChatModeratedMessageColor": 89,
		"Separator": 90,
		"ButtonBorder": 91,
		"ButtonText": 92,
		"InputFieldBorder": 93,
		"CheckedFieldBackground": 94,
		"CheckedFieldBorder": 95,
		"CheckedFieldIndicator": 96,
		"HeaderSection": 97,
		"Midlight": 98,
		"StatusBar": 99,
		"DialogButton": 100,
		"DialogButtonText": 101,
		"DialogButtonBorder": 102,
		"DialogMainButton": 103,
		"DialogMainButtonText": 104,
		"InfoBarWarningBackground": 105,
		"InfoBarWarningText": 106,
		"ScriptMethod": 108,
		"ScriptProperty": 109,
		"ScriptNil": 110,
		"ScriptBool": 111,
		"ScriptFunction": 112,
		"ScriptLocal": 113,
		"ScriptSelf": 114,
		"ScriptLuauKeyword": 115,
		"ScriptFunctionName": 116,
		"ScriptTodo": 117,
		"ScriptBracket": 118,
		"AttributeCog": 119,
	},
	"StudioStyleGuideModifier": {
		"Default": 0,
		"Selected": 1,
		"Pressed": 2,
		"Disabled": 3,
		"Hover": 4,
	},
	"Style": {
		"AlternatingSupports": 0,
		"BridgeStyleSupports": 1,
		"NoSupports": 2,
	},
	"SurfaceConstraint": {
		"None": 0,
		"Hinge": 1,
		"SteppingMotor": 2,
		"Motor": 3,
	},
	"SurfaceGuiShape": {
		"Flat": 0,
		"CurvedHorizontally": 1,
	},
	"SurfaceGuiSizingMode": {
		"FixedSize": 0,
		"PixelsPerStud": 1,
	},
	"SurfaceType": {
		"Smooth": 0,
		"Glue": 1,
		"Weld": 2,
		"Studs": 3,
		"Inlet": 4,
		"Universal": 5,
		"Hinge": 6,
		"Motor": 7,
		"SteppingMotor": 8,
		"SmoothNoOutlines": 10,
	},
	"SwipeDirection": {
		"Right": 0,
		"Left": 1,
		"Up": 2,
		"Down": 3,
		"None": 4,
	},
	"TableMajorAxis": {
		"RowMajor": 0,
		"ColumnMajor": 1,
	},
	"Technology": {
		"Compatibility": 2,
		"Voxel": 1,
		"ShadowMap": 3,
		"Legacy": 0,
		"Future": 4,
	},
	"TeleportMethod": {
		"TeleportToSpawnByName": 0,
		"TeleportToPlaceInstance": 1,
		"TeleportToPrivateServer": 2,
		"TeleportPartyAsync": 3,
		"TeleportUnknown": 4,
	},
	"TeleportResult": {
		"Success": 0,
		"Failure": 1,
		"GameNotFound": 2,
		"GameEnded": 3,
		"GameFull": 4,
		"Unauthorized": 5,
		"Flooded": 6,
		"IsTeleporting": 7,
	},
	"TeleportState": {
		"RequestedFromServer": 0,
		"Started": 1,
		"WaitingForServer": 2,
		"Failed": 3,
		"InProgress": 4,
	},
	"TeleportType": {
		"ToPlace": 0,
		"ToInstance": 1,
		"ToReservedServer": 2,
	},
	"TerrainAcquisitionMethod": {
		"None": 0,
		"Legacy": 1,
		"Template": 2,
		"Generate": 3,
		"Import": 4,
		"Convert": 5,
		"EditAddTool": 6,
		"EditSeaLevelTool": 7,
		"EditReplaceTool": 8,
		"RegionFillTool": 9,
		"RegionPasteTool": 10,
		"Other": 11,
	},
	"TerrainFace": {
		"Top": 0,
		"Side": 1,
		"Bottom": 2,
	},
	"TextChatMessageStatus": {
		"Unknown": 1,
		"Success": 2,
		"Sending": 3,
		"TextFilterFailed": 4,
		"Floodchecked": 5,
		"InvalidPrivacySettings": 6,
		"InvalidTextChannelPermissions": 7,
		"MessageTooLong": 8,
	},
	"TextFilterContext": {
		"PublicChat": 1,
		"PrivateChat": 2,
	},
	"TextInputType": {
		"Default": 0,
		"NoSuggestions": 1,
		"Number": 2,
		"Email": 3,
		"Phone": 4,
		"Password": 5,
		"PasswordShown": 6,
		"Username": 7,
		"OneTimePassword": 8,
	},
	"TextTruncate": {
		"None": 0,
		"AtEnd": 1,
	},
	"TextXAlignment": {
		"Left": 0,
		"Center": 2,
		"Right": 1,
	},
	"TextYAlignment": {
		"Top": 0,
		"Center": 1,
		"Bottom": 2,
	},
	"TextureMode": {
		"Stretch": 0,
		"Wrap": 1,
		"Static": 2,
	},
	"TextureQueryType": {
		"NonHumanoid": 0,
		"NonHumanoidOrphaned": 1,
		"Humanoid": 2,
		"HumanoidOrphaned": 3,
	},
	"ThreadPoolConfig": {
		"Auto": 0,
		"PerCore1": 101,
		"PerCore2": 102,
		"PerCore3": 103,
		"PerCore4": 104,
		"Threads1": 1,
		"Threads2": 2,
		"Threads3": 3,
		"Threads4": 4,
		"Threads8": 8,
		"Threads16": 16,
	},
	"ThrottlingPriority": {
		"Extreme": 2,
		"ElevatedOnServer": 1,
		"Default": 0,
	},
	"ThumbnailSize": {
		"Size48x48": 0,
		"Size180x180": 1,
		"Size420x420": 2,
		"Size60x60": 3,
		"Size100x100": 4,
		"Size150x150": 5,
		"Size352x352": 6,
	},
	"ThumbnailType": {
		"HeadShot": 0,
		"AvatarBust": 1,
		"AvatarThumbnail": 2,
	},
	"TickCountSampleMethod": {
		"Fast": 0,
		"Benchmark": 1,
		"Precise": 2,
	},
	"TopBottom": {
		"Top": 0,
		"Center": 1,
		"Bottom": 2,
	},
	"TouchCameraMovementMode": {
		"Default": 0,
		"Follow": 2,
		"Classic": 1,
		"Orbital": 3,
	},
	"TouchMovementMode": {
		"Default": 0,
		"Thumbstick": 1,
		"DPad": 2,
		"Thumbpad": 3,
		"ClickToMove": 4,
		"DynamicThumbstick": 5,
	},
	"TrackerError": {
		"Ok": 0,
		"NoService": 1,
		"InitFailed": 2,
		"NoVideo": 3,
		"VideoError": 4,
		"VideoNoPermission": 5,
		"VideoUnsupported": 6,
		"NoAudio": 7,
		"AudioError": 8,
		"AudioNoPermission": 9,
	},
	"TrackerExtrapolationFlagMode": {
		"Auto": 3,
		"ForceDisabled": 0,
		"ExtrapolateFacsAndPose": 1,
		"ExtrapolateFacsOnly": 2,
	},
	"TrackerLodFlagMode": {
		"Auto": 2,
		"ForceFalse": 0,
		"ForceTrue": 1,
	},
	"TrackerLodValueMode": {
		"Auto": 2,
		"Force0": 0,
		"Force1": 1,
	},
	"TrackerMode": {
		"None": 0,
		"Audio": 1,
		"Video": 2,
		"AudioVideo": 3,
	},
	"TrackerPromptEvent": {
		"LODCameraRecommendDisable": 0,
	},
	"TriStateBoolean": {
		"Unknown": 0,
		"True": 1,
		"False": 2,
	},
	"TweenStatus": {
		"Canceled": 0,
		"Completed": 1,
	},
	"UITheme": {
		"Light": 0,
		"Dark": 1,
	},
	"UiMessageType": {
		"UiMessageError": 0,
		"UiMessageInfo": 1,
	},
	"UsageContext": {
		"Default": 0,
		"Preview": 1,
	},
	"UserCFrame": {
		"Head": 0,
		"LeftHand": 1,
		"RightHand": 2,
		"Floor": 3,
	},
	"UserInputState": {
		"Begin": 0,
		"Change": 1,
		"End": 2,
		"Cancel": 3,
		"None": 4,
	},
	"UserInputType": {
		"MouseButton1": 0,
		"MouseButton2": 1,
		"MouseButton3": 2,
		"MouseWheel": 3,
		"MouseMovement": 4,
		"Touch": 7,
		"Keyboard": 8,
		"Focus": 9,
		"Accelerometer": 10,
		"Gyro": 11,
		"Gamepad1": 12,
		"Gamepad2": 13,
		"Gamepad3": 14,
		"Gamepad4": 15,
		"Gamepad5": 16,
		"Gamepad6": 17,
		"Gamepad7": 18,
		"Gamepad8": 19,
		"TextInput": 20,
		"InputMethod": 21,
		"None": 22,
	},
	"VRPlayMode": {
		"Seated": 0,
		"Standing": 1,
	},
	"VRSafetyBubbleMode": {
		"NoOne": 0,
		"OnlyFriends": 1,
		"Anyone": 2,
	},
	"VRScaling": {
		"World": 0,
		"Off": 1,
	},
	"VRSessionState": {
		"Idle": 1,
		"Visible": 2,
		"Focused": 3,
		"Stopping": 4,
		"Undefined": 0,
	},
	"VRTouchpad": {
		"Left": 0,
		"Right": 1,
	},
	"VRTouchpadMode": {
		"Touch": 0,
		"VirtualThumbstick": 1,
		"ABXY": 2,
	},
	"VelocityConstraintMode": {
		"Line": 0,
		"Plane": 1,
		"Vector": 2,
	},
	"VerticalAlignment": {
		"Center": 0,
		"Top": 1,
		"Bottom": 2,
	},
	"VerticalScrollBarPosition": {
		"Left": 1,
		"Right": 0,
	},
	"VibrationMotor": {
		"Large": 0,
		"Small": 1,
		"LeftTrigger": 2,
		"RightTrigger": 3,
		"LeftHand": 4,
		"RightHand": 5,
	},
	"VirtualCursorMode": {
		"Default": 0,
		"Disabled": 1,
		"Enabled": 2,
	},
	"VirtualInputMode": {
		"Recording": 1,
		"Playing": 2,
		"None": 0,
	},
	"VoiceChatState": {
		"Idle": 0,
		"Joining": 1,
		"JoiningRetry": 2,
		"Joined": 3,
		"Leaving": 4,
		"Ended": 5,
		"Failed": 6,
	},
	"VolumetricAudio": {
		"Disabled": 0,
		"Automatic": 1,
		"Enabled": 2,
	},
	"WaterDirection": {
		"NegX": 0,
		"X": 1,
		"NegY": 2,
		"Y": 3,
		"NegZ": 4,
		"Z": 5,
	},
	"WaterForce": {
		"None": 0,
		"Small": 1,
		"Medium": 2,
		"Strong": 3,
		"Max": 4,
	},
	"WrapLayerAutoSkin": {
		"Disabled": 0,
		"EnabledPreserve": 1,
		"EnabledOverride": 2,
	},
	"WrapLayerDebugMode": {
		"None": 0,
		"BoundCage": 1,
		"LayerCage": 2,
		"BoundCageAndLinks": 3,
		"Reference": 4,
		"Rbf": 5,
		"OuterCage": 6,
		"ReferenceMeshAfterMorph": 7,
		"HSROuterDetail": 8,
		"HSROuter": 9,
		"HSRInner": 10,
		"HSRInnerReverse": 11,
		"LayerCageFittedToBase": 12,
		"LayerCageFittedToPrev": 13,
	},
	"WrapTargetDebugMode": {
		"None": 0,
		"TargetCageOriginal": 1,
		"TargetCageCompressed": 2,
		"TargetCageInterface": 3,
		"TargetLayerCageOriginal": 4,
		"TargetLayerCageCompressed": 5,
		"TargetLayerInterface": 6,
		"Rbf": 7,
		"OuterCageDetail": 8,
	},
	"ZIndexBehavior": {
		"Global": 0,
		"Sibling": 1,
	},
}

API_DATA: ApiData = requests.get(
	url = "https://raw.githubusercontent.com/CloneTrooper1019/Roblox-Client-Tracker/roblox/API-Dump.json",
	params = {}
).json()

def get_instance_data(
	apply_inheritance=True,
	include_services=False,
	include_deprecated_instances=False,
	include_non_creatable_instances=False,
	include_non_browsable_instances=False, 
	include_deprecated_properties=False,
	include_non_scriptable_properties=False,
) -> dict[ApiClassTypeName, InstanceData]:
	api_data = deepcopy(API_DATA)
	out_data = {}
	for class_data in api_data["Classes"]:
		class_name = class_data["Name"]
		property_data_registry = {}
		event_data_registry = {}
		function_data_registry = {}

		for member_data in class_data["Members"]:
			if "MemberType" in member_data:
				member_type = member_data["MemberType"]
				member_name = member_data["Name"]
				is_replicated = False
				is_hidden = False
				is_deprecated = False
				is_browsable = False
				is_scriptable = False
					
				if "Tags" in member_data:
					is_replicated = not "NotReplicated" in member_data["Tags"]
					is_hidden = "Hidden" in member_data["Tags"]
					is_deprecated = "Deprecated" in member_data["Tags"]
					is_browsable = not "NotBrowsable" in member_data["Tags"]
					is_scriptable = not "NotScriptable" in member_data["Tags"]

				if member_type == "Property":
					
					property_data: PropertyData = {
						"name": member_name,
						"is_replicated": is_replicated,
						"is_hidden": is_hidden,
						"is_deprecated": is_deprecated,
						"is_browsable": is_browsable,
						"is_scriptable": is_scriptable,
						"type": member_data["ValueType"]["Name"],
					}

					property_data_registry[property_data["name"]] = property_data

				elif member_type == "Event" or member_type == "Function" or member_type == "Callback":
		
					params: list[ParameterData] = []

					for param_data in member_data["Parameters"]:
						var_name = param_data["Name"]
						type_name = param_data["Type"]["Name"]
					
						if "Default" in param_data:
							type_name += "?"

						params.append({
							"name": var_name,
							"type": type_name
						})

					if member_type == "Function" or member_type == "Callback":
						
						is_yielding = False

						is_custom_lua_state = False
						can_yield = False
						if "Tags" in member_data:
							is_custom_lua_state = "CustomLuaState" in member_data["Tags"]
							can_yield = "CanYield" in member_data["Tags"]
							if "Yields" in member_data["Tags"]:
								is_yielding = True
								if "NoYield" in member_data["Tags"]:
									raise ValueError(f"somehow yields and no-yield co-exist in the same member: {class_name}.{member_name}")
					
						return_type_name = "nil"

						if "Type" in member_data["ReturnType"]:
							return_type_name = member_data["ReturnType"]["Type"]

						function_data: FunctionData = {
							"name": member_name,
							"is_replicated": is_replicated,
							"is_hidden": is_hidden,
							"is_deprecated": is_deprecated,
							"is_browsable": is_browsable,
							"is_scriptable": is_scriptable,
							"is_yielding": is_yielding,
							"is_custom_lua_state": is_custom_lua_state,
							"can_yield": can_yield,
							"parameters": params,
							"return_type": return_type_name,
						}

						function_data_registry[function_data["name"]] = function_data

					elif member_type == "Event":
						event_data: EventData = {
							"name": member_name,
							"is_replicated": is_replicated,
							"is_hidden": is_hidden,
							"is_deprecated": is_deprecated,
							"is_browsable": is_browsable,
							"is_scriptable": is_scriptable,
							"parameters": params,
						}
						event_data_registry[event_data["name"]] = event_data

		is_creatable = False
		is_browsable = False
		is_deprecated = False
		is_service = False
		is_replicated = False
		is_player_replicated = False
		is_settings = False
		is_user_settings = False

		if "Tags" in class_data:
			is_creatable = not "NotCreatable" in class_data["Tags"]
			is_browsable = not "NotBrowsable" in class_data["Tags"]
			is_deprecated = "Deprecated" in class_data["Tags"]
			is_service = "Service" in class_data["Tags"]
			is_replicated = not "NotReplicated" in class_data["Tags"]
			is_player_replicated = "PlayerReplicated" in class_data["Tags"]
			is_settings = "Settings" in class_data["Tags"]
			is_user_settings = "UserSettings" in class_data["Tags"]

		instance_data: InstanceData = {
			"name": class_name,
			"path": class_name,
			"super_class": class_data["Superclass"],
			"is_creatable": is_creatable,
			"is_browsable": is_browsable,
			"is_deprecated": is_deprecated,
			"is_service": is_service,
			"is_replicated": is_replicated,
			"is_player_replicated": is_player_replicated,
			"is_settings": is_settings,
			"is_user_settings": is_user_settings,
			"properties": property_data_registry,
			"functions": function_data_registry,
			"events": event_data_registry,
		}
		out_data[instance_data["name"]] = instance_data

	def write_inheritance(super_class_name="<<<ROOT>>>"):
		if super_class_name == "<<<ROOT>>>":
			for class_name, class_data in out_data.items():
				if class_data["super_class"] == super_class_name:
					write_inheritance(class_name)
		else:
			super_class = out_data[super_class_name]
			for class_name, class_data in out_data.items():
				if class_data["super_class"] == super_class_name:
					
					class_data["path"] = super_class["path"] + "/" + class_name
					if class_data["path"][0] == "/":
						class_data["path"] = class_data["path"][1:]

					if apply_inheritance:
						for prop_name, prop_val in super_class["properties"].items():
							if not prop_name in class_data["properties"]:
								class_data["properties"][prop_name] = deepcopy(prop_val)
					
						for event_name, event_val in super_class["events"].items():
							if not event_name in class_data["events"]:
								class_data["events"][event_name] = deepcopy(event_val)
					
						for func_name, func_val in super_class["functions"].items():
							if not func_name in class_data["functions"]:
								class_data["functions"][func_name] = deepcopy(func_val)

					write_inheritance(class_name)
	
	write_inheritance()

	final_out = {}
	for inst_name, inst_data in out_data.items():
		if inst_data["is_creatable"] or include_non_creatable_instances:
			if not inst_data["is_deprecated"] or include_deprecated_instances:
				if not inst_data["is_service"] or include_services:
					if not inst_data["is_browsable"] or include_non_browsable_instances:
						final_inst_data = deepcopy(inst_data)
						final_inst_data["properties"] = {}
						final_inst_data["events"] = {}
						final_inst_data["functions"] = {}

						for prop_name, prop_val in inst_data["properties"].items():
							if prop_val["is_scriptable"] or include_non_scriptable_properties:
								if not prop_val["is_deprecated"] or include_deprecated_properties:
									final_inst_data["properties"][prop_name] = prop_val

						for event_name, event_val in inst_data["events"].items():
							if event_val["is_scriptable"] or include_non_scriptable_properties:
								if not event_val["is_deprecated"] or include_deprecated_properties:
									final_inst_data["events"][event_name] = event_val
						
						for func_name, func_val in inst_data["functions"].items():
							if func_val["is_scriptable"] or include_non_scriptable_properties:
								if not func_val["is_deprecated"] or include_deprecated_properties:
									final_inst_data["functions"][func_name] = func_val
		
						final_out[inst_name] = final_inst_data
		
	return final_out

def get_enum_items(enum_name: EnumName) -> list[EnumItemName]:
	return deepcopy(ENUM_TREE[enum_name])

# with open("instance_text.json", "w") as file:
# 	file.write(json.dumps(get_instance_data(), indent=5))
