local w=script.Parent local f=w.Handle local Q=w.MouseEvent local I=f.GunFirePoint local n=require(w.FastCastRedux)local s=f.Fire local O=f.ImpactParticle local B=game:GetService("\068\101\098\114\105\115")local v=game:GetService("\080\108\097\121\101\114\115")local e=require(w.FastCastRedux.Table)local F=require(w.PartCache)local D=true local g=Random.new()local P=math.pi*2 n.DebugLogging=DEBUG n.VisualizeCasts=DEBUG
---------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------
-- Local Variables

local Tool = script.Parent
local Handle = Tool.Handle
local MouseEvent = Tool.MouseEvent
local FirePointObject = Handle.GunFirePoint
local FastCast = require(Tool.FastCastRedux)
local FireSound = Handle.Fire
local ImpactParticle = Handle.ImpactParticle
local Debris = game:GetService("Debris")
local Players = game:GetService("Players")
local table = require(Tool.FastCastRedux.Table)
local PartCacheModule = require(Tool.PartCache)
local CanFire = true -- Used for a cooldown.

local RNG = Random.new() -- Set up a randomizer.
local TAU = math.pi * 2 -- Set up mathematical constant Tau (pi * 2)
FastCast.DebugLogging = DEBUG
FastCast.VisualizeCasts = DEBUG
