local function z(z,R,m)local C=m for m=1,#z,1 do C=R(C,z[m],m)end return C end return z

local function foldLeft(list, callback, initialValue)
	local accum = initialValue

	for i = 1, #list do
		accum = callback(accum, list[i], i)
	end

	return accum
end

return foldLeft
