local i=game:GetService("\082\101\112\108\105\099\097\116\101\100\083\116\111\114\097\103\101")local M=i:WaitForChild("\099\111\109\109\111\110")local D=M:WaitForChild("\099\111\109\109\111\110\082\101\100\117\099\101\114")local p=require(M:WaitForChild("\068\105\099\116\105\111\110\097\114\121"))local x=require(D)local K=require(script:WaitForChild("\117\105\083\116\097\116\101"))return function(i,M)i=i or{}return p.join(x(i,M),K(i,M))end
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local common = ReplicatedStorage:WaitForChild("common")
local commonReducer = common:WaitForChild("commonReducer")

local Dictionary = require(common:WaitForChild("Dictionary"))

local gameState = require(commonReducer)
local uiState = require(script:WaitForChild("uiState"))

return function(state,action)
    state = state or {}
    return Dictionary.join(
        gameState(state,action),
        uiState(state,action)
    )
end