function Window.new(O)local V={_model=O,_state=Constants.State.Window.Normal;_connections={}}setmetatable(V,{__index=Window})V._connections.repairConnection=(O:FindFirstChild("\071\108\097\115\115")).Touched:Connect(function(O)if O.Anchored then return end if CollectionService:HasTag(O,Constants.Tag.Tool.RepairKit)and V._state==Constants.State.Window.Breached then O:Destroy()V:fix()end end)return V end
--[[
	Returns a new window component associated with specified model. 
]]
function Window.new(model)
	local component = {
		_model = model,
		_state = Constants.State.Window.Normal,
		_connections = {},
	}

	setmetatable(component, { __index = Window })

	component._connections.repairConnection = model:FindFirstChild("Glass").Touched:Connect(function(otherPart)
		if otherPart.Anchored then
			return
		end

		if
			CollectionService:HasTag(otherPart, Constants.Tag.Tool.RepairKit)
			and component._state == Constants.State.Window.Breached
		then
			otherPart:Destroy()
			component:fix()
		end
	end)

	return component
end
