Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --https://github.com/Mokiros/roblox-FE-compatibility
- if game:GetService("RunService"):IsClient() then error("Script must be server-side in order to work; use h/ and not hl/") end
- local Player,game,owner = owner,game
- local RealPlayer = Player
- do print("FE Compatibility code V2 by Mokiros")local RealPlayer=RealPlayer;script.Parent=RealPlayer.Character;local a=function(b)b[1].f[b[2]]=nil end;local c={__index={disconnect=a,Disconnect=a}}local d={__index={Connect=function(b,e)local f=tostring(math.random(0,10000))while b.f[f]do f=tostring(math.random(0,10000))end;b.f[f]=e;return setmetatable({b,f},c)end}}d.__index.connect=d.__index.Connect;local function g()return setmetatable({f={}},d)end;local h={Hit=CFrame.new(),KeyUp=g(),KeyDown=g(),Button1Up=g(),Button1Down=g(),Button2Up=g(),Button2Down=g()}h.keyUp=h.KeyUp;h.keyDown=h.KeyDown;local i={InputBegan=g(),InputEnded=g()}local CAS={Actions={},BindAction=function(self,j,k,l,...)CAS.Actions[j]=k and{Name=j,Function=k,Keys={...}}or nil end}CAS.UnbindAction=CAS.BindAction;local function m(self,n,...)for o,e in pairs(self[n].f)do e(...)end end;h.T=m;i.T=m;local p=Instance.new("RemoteEvent")p.Name="UserInput_Event"p.OnServerEvent:Connect(function(q,r)if q~=RealPlayer then return end;h.Target=r.e;h.Hit=r.d;if not r.f then local s=r.c==Enum.UserInputState.Begin;if r.b==Enum.UserInputType.MouseButton1 then return h:T(s and"Button1Down"or"Button1Up")end;if r.b==Enum.UserInputType.MouseButton2 then return h:T(s and"Button2Down"or"Button2Up")end;for o,t in pairs(CAS.Actions)do for o,u in pairs(t.Keys)do if u==r.a then t.Function(t.Name,r.c,r)end end end;h:T(s and"KeyDown"or"KeyUp",r.a.Name:lower())i:T(s and"InputBegan"or"InputEnded",r,false)end end)p.Parent=NLS([==[local a=script:WaitForChild("UserInput_Event")local b=owner:GetMouse()local c=game:GetService("UserInputService")local d=function(e,f)if f then return end;a:FireServer({a=e.KeyCode,b=e.UserInputType,c=e.UserInputState,d=b.Hit,e=b.Target})end;c.InputBegan:Connect(d)c.InputEnded:Connect(d)local g,h;local i=game:GetService("RunService").Heartbeat;while true do if g~=b.Hit or h~=b.Target then g,h=b.Hit,b.Target;a:FireServer({f=1,Target=h,d=g})end;for j=1,2 do i:Wait()end end]==],script)local v=game;local w={__index=function(self,u)local x=rawget(self,"_RealService")if x then return typeof(x[u])=="function"and function(o,...)return x[u](x,...)end or x[u]end end,__newindex=function(self,u,y)local x=rawget(self,"_RealService")if x then x[u]=y end end}local function z(t,A)t._RealService=typeof(A)=="string"and v:GetService(A)or A;return setmetatable(t,w)end;local B={GetService=function(self,x)return rawget(self,x)or v:GetService(x)end,Players=z({LocalPlayer=z({GetMouse=function(self)return h end},Player)},"Players"),UserInputService=z(i,"UserInputService"),ContextActionService=z(CAS,"ContextActionService"),RunService=z({_btrs={},RenderStepped=v:GetService("RunService").Heartbeat,BindToRenderStep=function(self,j,o,k)self._btrs[j]=self.Heartbeat:Connect(k)end,UnbindFromRenderStep=function(self,j)self._btrs[j]:Disconnect()end},"RunService")}rawset(B.Players,"localPlayer",B.Players.LocalPlayer)B.service=B.GetService;z(B,game)game,owner=B,B.Players.LocalPlayer end
- repeat
- wait()
- until game:service("Players").LocalPlayer.Character ~= nil
- local Player = game:service("Players").LocalPlayer
- local ch = Player.Character
- local occ = Instance.new("BoolValue", ch)
- occ.Name = "Occupied"
- local swi = Instance.new("StringValue", ch)
- swi.Name = "switch"
- local trans = Instance.new("BoolValue", ch)
- trans.Name = "trans"
- repeat wait() until ch.Humanoid ~= nil
- ch.Humanoid.Died:connect(function()
- Player.CharacterAdded:connect(function(chz)
- local occ = Instance.new("BoolValue", chz)
- occ.Name = "Occupied"
- local swi = Instance.new("StringValue", chz)
- swi.Name = "switch"
- local trans = Instance.new("BoolValue", chz)
- trans.Name = "trans"
- end
- )
- end)
- local PGui = Player:WaitForChild("PlayerGui")
- local Character = Player.Character
- local Humanoid = Character:WaitForChild("Humanoid")
- local Head = Character:WaitForChild("Head")
- local Torso = Character:WaitForChild("Torso")
- local HRP = Character:WaitForChild("HumanoidRootPart")
- local RArm = Character:WaitForChild("Right Arm")
- local LArm = Character:WaitForChild("Left Arm")
- local RLeg = Character:WaitForChild("Right Leg")
- local LLeg = Character:WaitForChild("Left Leg")
- msgz = Instance.new("Message", PGui)
- msgz.Text = "Chat \'MYSTIC\' to go MYSTIC, and \'off\' to turn it off!"
- game.Debris:AddItem(msgz, 6.5)
- local Joints = {Head = Torso.Neck, Torso = HRP.RootJoint, RArm = Torso["Right Shoulder"], LArm = Torso["Left Shoulder"], RLeg = Torso["Right Hip"], LLeg = Torso["Left Hip"]}
- local Refresh = function()
- Joints.Head.C0 = CFrame.new(0, 1, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
- Joints.Torso.C0 = CFrame.new(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
- Joints.RArm.C0 = CFrame.new(1, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
- Joints.LArm.C0 = CFrame.new(-1, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
- Joints.RLeg.C0 = CFrame.new(1, -1, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
- Joints.LLeg.C0 = CFrame.new(-1, -1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
- Joints.Head.C1 = CFrame.new(0, -0.5, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
- Joints.Torso.C1 = CFrame.new(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
- Joints.RArm.C1 = CFrame.new(-0.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
- Joints.LArm.C1 = CFrame.new(0.5, 0.5, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
- Joints.RLeg.C1 = CFrame.new(0.5, 1, 0, 0, 0, 1, 0, 1, 0, -1, 0, 0)
- Joints.LLeg.C1 = CFrame.new(-0.5, 1, 0, 0, 0, -1, 0, 1, 0, 1, 0, 0)
- end
- Anims = {Charge = function(active, async)
- local f = function()
- if active then
- for i = 0, 7, 0.25 do
- Joints.Head.C0 = Joints.Head.C0 * CFrame.Angles(0.01, 0, 0)
- Joints.RArm.C0 = Joints.RArm.C0 * CFrame.Angles(-0.025, -0.016, 0.035)
- Joints.LArm.C0 = Joints.LArm.C0 * CFrame.Angles(-0.025, 0.016, -0.035)
- Joints.RLeg.C0 = Joints.RLeg.C0 * CFrame.Angles(-0.01, -0.01, 0.01)
- Joints.LLeg.C0 = Joints.LLeg.C0 * CFrame.Angles(-0.005, 0.01, 0.01)
- wait(0.016666666666667)
- end
- else
- do
- for i = 0, 7, 0.25 do
- Joints.Head.C0 = Joints.Head.C0 * CFrame.Angles(0.01, 0, 0):inverse()
- Joints.RArm.C0 = Joints.RArm.C0 * CFrame.Angles(-0.025, -0.016, 0.035):inverse()
- Joints.LArm.C0 = Joints.LArm.C0 * CFrame.Angles(-0.025, 0.016, -0.035):inverse()
- Joints.RLeg.C0 = Joints.RLeg.C0 * CFrame.Angles(-0.01, -0.01, 0.01):inverse()
- Joints.LLeg.C0 = Joints.LLeg.C0 * CFrame.Angles(-0.005, 0.01, 0.01):inverse()
- wait(0.016666666666667)
- end
- end
- end
- end
- if async then
- f = coroutine.wrap(f)
- end
- return f()
- end
- , Implode = function(active, async)
- local f = function()
- if active then
- for i = 0, 7, 0.8 do
- Joints.Head.C0 = Joints.Head.C0 * CFrame.Angles(-0.06, 0, 0)
- Joints.RArm.C0 = Joints.RArm.C0 * CFrame.Angles(-0.03, -0.1, 0.4)
- Joints.LArm.C0 = Joints.LArm.C0 * CFrame.Angles(-0.03, 0.1, -0.4)
- Joints.RLeg.C0 = Joints.RLeg.C0 * CFrame.Angles(-0.02, -0.06, 0)
- Joints.LLeg.C0 = Joints.LLeg.C0 * CFrame.Angles(-0.01, 0.03, 0)
- wait(0.016666666666667)
- end
- else
- do
- for i = 0, 7, 0.8 do
- Joints.Head.C0 = Joints.Head.C0 * CFrame.Angles(-0.06, 0, 0):inverse()
- Joints.RArm.C0 = Joints.RArm.C0 * CFrame.Angles(-0.03, -0.1, 0.4):inverse()
- Joints.LArm.C0 = Joints.LArm.C0 * CFrame.Angles(-0.03, 0.1, -0.4):inverse()
- Joints.RLeg.C0 = Joints.RLeg.C0 * CFrame.Angles(-0.02, -0.06, 0):inverse()
- Joints.LLeg.C0 = Joints.LLeg.C0 * CFrame.Angles(-0.01, 0.03, 0):inverse()
- wait(0.016666666666667)
- end
- end
- end
- end
- if async then
- f = coroutine.wrap(f)
- end
- return f()
- end
- }
- local Transformed, Occupied = false, false
- local Create = assert(LoadLibrary("RbxUtility")).Create
- local Part = Instance.new("Part")
- Part.TopSurface = 0
- Part.BottomSurface = 0
- Part.formFactor = "Custom"
- Part.Size = Vector3.new()
- Part.Anchored = false
- Part.CanCollide = false
- local Flash = function(Par, Col, Duration, Delay, Async)
- pcall(function()
- Par = Par or PGui
- if not Col then
- Col = BrickColor:White().Color
- Duration = Duration or 10
- if not Delay then
- Delay = 1 / Duration
- local G = Create("ScreenGui")({Parent = Par})
- if not Col then
- local F = Create("Frame")({Parent = G, BorderSizePixel = 0, Size = UDim2.new(1.2, 0, 1.2, 0), Position = UDim2.new(), ZIndex = 10, BackgroundColor3 = Color3.new(1, 1, 1), Transparency = 0})
- local f = function()
- for i = 0, Duration, Delay do
- wait(0.016666666666667)
- F.Transparency = i / Duration
- end
- pcall(game.Destroy, G)
- end
- if Async then
- f = coroutine.wrap(f)
- end
- return f()
- end
- end
- end
- end
- )
- end
- local Shake = function(Duration, Delay, Distance, Async)
- pcall(function()
- local Cam = workspace.CurrentCamera
- Duration = Duration or 10
- if not Delay then
- Delay = 1 / Duration
- Distance = Distance or 15
- local f = function()
- for i = 0, Duration, Delay do
- wait(0.016666666666667)
- local R = Cam.CoordinateFrame - Cam.CoordinateFrame.p
- local Scroll = Cam.CoordinateFrame.p - Cam.Focus.p.magnitude
- local NewF = CFrame.new(Cam.Focus.p) * R * CFrame.new(math.random(-Distance, Distance) / (Distance / 0.25), math.random(-Distance, Distance) / (Distance / 0.25), math.random(-Distance, Distance) / (Distance / 0.25))
- Cam.CoordinateFrame = NewF * CFrame.new(0, 0, Scroll)
- end
- end
- if Async then
- f = coroutine.wrap(f)
- end
- return f()
- end
- end
- )
- end
- local Sound = function(Prnt, Id, Pit, Vol)
- pcall(function()
- local cp = game:service("ContentProvider")
- if type(Id) == "number" then
- cp:Preload("rbxassetid://" .. Id)
- Id = "rbxassetid://" .. Id
- else
- if type(Id) == "string" then
- cp:Preload(Id)
- Id = Id
- end
- end
- local S = Create("Sound")({Parent = Prnt or workspace, SoundId = Id, Volume = Vol or 1, Pitch = Pit or 1})
- S:Play()
- S:Stop()
- S:Play()
- game:service("Debris"):AddItem(S, 0.9)
- end
- )
- end
- local Chat = function(Par, Msg, Col)
- if Msg then
- if not Par then
- Par = Head
- end
- if not Col then
- Col = math.random(0, 2)
- end
- game:service("Chat"):Chat(Par, Msg, Col)
- end
- end
- local Transform = function(active)
- if not Transformed and not Occupied and active then
- Occupied = true
- Humanoid.WalkSpeed = 0
- Refresh()
- local cp = game:service("ContentProvider")
- do
- cp:Preload("rbxassetid://1095708", "rbxassetid://3270017", "rbxassetid://9982590")
- local done = false
- local angle = 0
- local aura = {}
- Sound(Head, 98333808, 0.85, 0.6)
- Chat(nil, "It\'s time for a power up!")
- local bp = Instance.new("BodyPosition")
- bp.maxForce = Vector3.new(1, 1, 1) / 0
- bp.position = HRP.Position
- bp.Parent = HRP
- local r = Ray.new(HRP.Position, Vector3.new(0, -50, 0).magnitude * Vector3.new(0, -50, 0).unit)
- local hit, endz = workspace:FindPartOnRay(r, Character)
- Anims.Charge(true, true)
- for i = 1, 2 do
- local charge = Part:clone()
- charge.Parent = Character
- charge.Transparency = 1
- charge.Reflectance = 0.35
- charge.Anchored = false
- charge:BreakJoints()
- local w = Instance.new("Weld", charge)
- w.Part0 = charge
- w.Part1 = HRP
- w.C0 = CFrame.new(0, HRP.Size.Y * 1.25, 0)
- local sm = Instance.new("SpecialMesh", charge)
- sm.MeshId = "rbxassetid://92588061"
- sm.Scale = Vector3.new(0.6, 0.25, 0.6)
- table.insert(aura, charge)
- if i == 1 then
- aura[i].BrickColor = BrickColor.new("White")
- aura[i].Material = "Neon"
- aura[i].Mesh.Scale = Vector3.new(0.3, 0.35, 0.3)
- aura[i].Weld.C0 = aura[i].Weld.C0 * CFrame.Angles(0, math.rad(45), 0)
- else
- aura[i].BrickColor = BrickColor.new("New Yeller")
- end
- end
- for i = 1, 0.35, -0.025 do
- for _,v in pairs(aura) do
- v.Transparency = i
- v.Weld.C0 = v.Weld.C0 * CFrame.new(0, -0.1, 0)
- v.Mesh.Scale = v.Mesh.Scale + Vector3.new(0.15, 0.05, 0.15)
- end
- wait(0.016666666666667)
- end
- coroutine.resume(coroutine.create(function()
- repeat
- wait()
- angle = angle % 100 + 0.5
- for _,v in pairs(aura) do
- if v:findFirstChild("Weld") then
- v.Weld.C0 = v.Weld.C0 * CFrame.Angles(0, 0.2, 0)
- end
- if v:findFirstChild("Mesh") then
- v.Mesh.Scale = v.Mesh.Scale + Vector3.new(math.cos(angle) / 25, 0, math.cos(angle) / 25)
- end
- v.Transparency = 0.5 + math.cos(angle) / 50
- end
- until done
- end
- ))
- for i = 1, 10 do
- if i % 2 == 0 then
- Shake(3, 0.1, 25, true)
- Flash(nil, BrickColor.new("White").Color, 3, 0.1, true)
- Sound(Head, 2974249, 0.5, 0.35)
- Sound(Head, 13775494, 0.1, 0.55)
- Chat(nil, "GRAH!!")
- coroutine.resume(coroutine.create(function()
- local x = Instance.new("Explosion", Torso)
- x.BlastPressure = 0
- x.Position = Torso.Position
- end
- ))
- end
- coroutine.resume(coroutine.create(function()
- local p = Part:clone()
- p.Parent = Character
- p.Anchored = true
- p.CFrame = HRP.CFrame * CFrame.new(0, -HRP.Size.Y * 1.5, 0) * CFrame.Angles(math.rad(90), 0, 0)
- local m = Instance.new("SpecialMesh", p)
- m.MeshId = "rbxassetid://3270017"
- m.Scale = Vector3.new(2, 2, 1)
- if hit ~= nil then
- if hit:IsA("Part") then
- p.BrickColor = hit.BrickColor
- p.Material = "Neon"
- else
- p.BrickColor = BrickColor.new("Light orange")
- p.Material = "Neon"
- end
- else
- p.BrickColor = BrickColor.new("Light orange")
- p.Material = "Neon"
- end
- for i = 0, 15, 0.45 do
- p.Transparency = i / 15
- m.Scale = Vector3.new(2, 2, i / 4) * i * 2
- wait(0.016666666666667)
- end
- pcall(game.Destroy, p)
- end
- ))
- coroutine.resume(coroutine.create(function()
- local cloud = {}
- for i = math.random(0, 59.504132231405), 360, 72 do
- for _i = 1, 3 do
- local p = Part:clone()
- p.Anchored = true
- if _i == 1 then
- p.CFrame = HRP.CFrame * CFrame.Angles(0, math.rad(i), 0) * CFrame.new(0, -HRP.Size.Y * 1.5, math.pi)
- else
- if _i == 2 then
- p.CFrame = HRP.CFrame * CFrame.Angles(0, math.rad(i), 0) * CFrame.new(0, -HRP.Size.Y * 1.5, math.pi * _i * 1.5)
- else
- p.CFrame = HRP.CFrame * CFrame.Angles(0, math.rad(i), 0) * CFrame.new(0, -HRP.Size.Y * 1.5, math.pi * _i * 2.5)
- end
- end
- local m = Instance.new("SpecialMesh", p)
- m.MeshId = "rbxassetid://1095708"
- m.Scale = Vector3.new(0.75, 1.5, 1.5)
- if hit ~= nil then
- if hit:IsA("Part") or hit:IsA("WedgePart") then
- p.BrickColor = hit.BrickColor
- p.Material = "Neon"
- else
- p.BrickColor = BrickColor.new("Light orange")
- p.Material = "Neon"
- end
- else
- p.BrickColor = BrickColor.new("Light orange")
- p.Material = "Neon"
- end
- p.Parent = Character
- table.insert(cloud, p)
- end
- end
- for i = 0, 15, 0.45 do
- for _,v in pairs(cloud) do
- v.Transparency = i / 15
- v.CFrame = v.CFrame * CFrame.new(0, 0, 0.5)
- if v:findFirstChild("Mesh") then
- v.Mesh.Scale = Vector3.new(0.75 + i / 1.5, 1.5 + i, 1.5 + i * 1.5)
- end
- end
- wait(0.016666666666667)
- end
- for _,v in pairs(cloud) do
- pcall(game.Destroy, v)
- end
- end
- ))
- wait(0.5)
- end
- wait(0.9)
- done = true
- Chat(nil, "Absolute..", "Green")
- Shake(10, 0.1, 25, true)
- Flash(nil, BrickColor.new("Cool yellow").Color, 8, 0.1, true)
- Sound(Head, 1369158, 0.5, 0.65)
- Sound(Head, 3264793, 1.5, 0.75)
- for i = 0, 10, 0.1 do
- for _,v in pairs(aura) do
- if v:findFirstChild("Mesh") then
- v.Mesh.Scale = v.Mesh.Scale - Vector3.new(0.035, 0, 0.035)
- end
- end
- wait(0.016666666666667)
- end
- Anims.Charge(false, false)
- Refresh()
- Anims.Implode(true, true)
- Chat(nil, "POWER!!", "Red")
- Shake(10, 0.1, 25, true)
- Flash(nil, BrickColor.new("Cool yellow").Color, 8, 0.1, true)
- Flash(nil, BrickColor.new("White").Color, 8, 0.1, true)
- Sound(Head, 3264793, 1, 0.8)
- Sound(Head, 2801263, 1, 0.35)
- coroutine.resume(coroutine.create(function()
- local p = Part:clone()
- p.Parent = Character
- p.Reflectance = 0.35
- p.Anchored = true
- p.CFrame = HRP.CFrame * CFrame.new(0, -HRP.Size.Y * 1.5, 0)
- local m = Instance.new("SpecialMesh", p)
- m.MeshId = "rbxassetid://9982590"
- m.Scale = Vector3.new(5, 5, 5)
- for i = 0, 25, 0.25 do
- if math.random(1, 2) == 1 then
- p.BrickColor = BrickColor.new("New Yeller")
- p.Material = "Neon"
- else
- p.BrickColor = BrickColor.new("Bright yellow")
- p.Material = "Neon"
- end
- p.Transparency = i / 25
- p.CFrame = p.CFrame * CFrame.Angles(math.random(), math.random(), math.random())
- m.Scale = Vector3.new(0.5, 0.5, 0.5) * i * 2
- wait(0.016666666666667)
- end
- pcall(game.Destroy, p)
- end
- ))
- sparkle = Instance.new("Sparkles", Torso)
- sparkle.SparkleColor = Color3.new(0.69019607843137, 1, 0.84705882352941)
- for i = 0, 25, 0.25 do
- for _,v in pairs(aura) do
- v.Transparency = i / 25
- if v:findFirstChild("Weld") then
- v.Weld.C0 = v.Weld.C0 * CFrame.Angles(0, -0.45, 0) * CFrame.new(0, -0.1, 0)
- end
- if v:findFirstChild("Mesh") then
- v.Mesh.Scale = v.Mesh.Scale + Vector3.new(0.25, 0.05, 0.25)
- end
- end
- wait(0.016666666666667)
- end
- for _,v in pairs(aura) do
- pcall(game.Destroy, v)
- end
- Chat(nil, "I\'m invincible!")
- coroutine.resume(coroutine.create(function()
- local x = Instance.new("Explosion", Torso)
- x.BlastPressure = 0
- x.Position = Torso.Position
- end
- ))
- pcall(game.Destroy, bp)
- Anims.Implode(false)
- Refresh()
- Humanoid.WalkSpeed = 16
- Transformed = true
- Occupied = false
- end
- else
- do
- if Transformed and not Occupied and not active then
- Occupied = true
- Humanoid.WalkSpeed = 0
- Refresh()
- Anims.Charge(true, true)
- Chat(nil, "I should save this energy..", "Blue")
- Sound(Head, 2785493, 0.7, 0.85)
- Sound(Head, 3264923, 0.85, 0.7)
- Shake(7, 0.1, 25, true)
- Flash(nil, BrickColor.new("Cool yellow").Color, 7, 0.1, true)
- Flash(nil, BrickColor.new("White").Color, 7, 0.1, false)
- pcall(function()
- sparkle:Destroy()
- end
- )
- Anims.Charge(false, false)
- Humanoid.WalkSpeed = 16
- Transformed = false
- Occupied = false
- end
- end
- end
- end
- Player.Chatted:connect(function(Msg)
- if Character.trans.Value == false and Character.Occupied.Value == false then
- Msg = Msg:lower()
- if Msg == "mystic" and Character.switch.Value == "" then
- Character.switch.Value = "mystic"
- Character.trans.Value = true
- Transform(true)
- Humanoid.MaxHealth = Humanoid.MaxHealth + tonumber("23")
- wait(1)
- Humanoid.Health = Humanoid.Health + tonumber("23")
- Character.trans.Value = false
- else
- if Msg == "off" and Character.switch.Value == "mystic" then
- Character.trans.Value = true
- Transform(false)
- Humanoid.Health = Humanoid.Health - tonumber("23")
- wait(1)
- Humanoid.MaxHealth = Humanoid.MaxHealth - tonumber("23")
- Character.trans.Value = false
- Character.switch.Value = ""
- end
- end
- end
- end
- )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement