local y=math.rad(-80)local C=math.rad(80)local e=math.rad(15)local E=Vector2.new(math.rad(15),0)local c=Vector2.new(math.rad(45),0)local s=.1 local O=.4 local o=Vector2.new(0,0)local t=Vector3.new(0,0,0)local N=Vector2.new(.002*math.pi,.0015*math.pi)local X=Vector2.new(.002*math.pi,.0015*math.pi)local I=1.5 local P=15 local G=.75 local u=Vector3.new(0,5,0)local F=Vector3.new(0,4,0)local b=Vector3.new(0,1.5,0)local V=Vector3.new(0,2,0)local B,d=pcall(function()return(UserSettings()):IsUserFeatureEnabled("\085\115\101\114\080\108\097\121\101\114\083\099\114\105\112\116\115\066\105\110\100\065\116\080\114\105\111\114\105\116\121")end)local W=B and d local n,J=pcall(function()return(UserSettings()):IsUserFeatureEnabled("\085\115\101\114\078\101\119\068\101\102\097\117\108\116\067\097\109\101\114\097\065\110\103\108\101")end)local f=n and J local l=require(script.Parent:WaitForChild("\067\097\109\101\114\097\085\116\105\108\115"))local v=require(script.Parent:WaitForChild("\090\111\111\109\067\111\110\116\114\111\108\108\101\114"))
-- Note: DotProduct check in CoordinateFrame::lookAt() prevents using values within about
-- 8.11 degrees of the +/- Y axis, that's why these limits are currently 80 degrees
local MIN_Y = math.rad(-80)
local MAX_Y = math.rad(80)

local VR_ANGLE = math.rad(15)
local VR_LOW_INTENSITY_ROTATION = Vector2.new(math.rad(15), 0)
local VR_HIGH_INTENSITY_ROTATION = Vector2.new(math.rad(45), 0)
local VR_LOW_INTENSITY_REPEAT = 0.1
local VR_HIGH_INTENSITY_REPEAT = 0.4

local ZERO_VECTOR2 = Vector2.new(0, 0)
local ZERO_VECTOR3 = Vector3.new(0, 0, 0)

local TOUCH_SENSITIVTY = Vector2.new(0.002 * math.pi, 0.0015 * math.pi)
local MOUSE_SENSITIVITY = Vector2.new(0.002 * math.pi, 0.0015 * math.pi)

local MAX_TIME_FOR_DOUBLE_TAP = 1.5
local MAX_TAP_POS_DELTA = 15
local MAX_TAP_TIME_DELTA = 0.75

local SEAT_OFFSET = Vector3.new(0, 5, 0)
local VR_SEAT_OFFSET = Vector3.new(0, 4, 0)
local HEAD_OFFSET = Vector3.new(0, 1.5, 0)
local R15_HEAD_OFFSET = Vector3.new(0, 2, 0)

local bindAtPriorityFlagExists, bindAtPriorityFlagEnabled = pcall(function()
	return UserSettings():IsUserFeatureEnabled("UserPlayerScriptsBindAtPriority")
end)
local FFlagPlayerScriptsBindAtPriority = bindAtPriorityFlagExists and bindAtPriorityFlagEnabled

local newDefaultCameraAngleFlagExists, newDefaultCameraAngleFlagEnabled = pcall(function()
	return UserSettings():IsUserFeatureEnabled("UserNewDefaultCameraAngle")
end)
local FFlagUserNewDefaultCameraAngle = newDefaultCameraAngleFlagExists and newDefaultCameraAngleFlagEnabled

local Util = require(script.Parent:WaitForChild("CameraUtils"))
local ZoomController = require(script.Parent:WaitForChild("ZoomController"))
