function DataModelUtils.getChildrenWithCriteria(g,F)local b={}for g,J in ipairs(g:GetChildren())do local v=true for g,F in pairs(F)do local b,M=pcall(function()return J[g]==F end)if not(b and M)then v=false break end end if v then table.insert(b,J)end end return b end return DataModelUtils
--[[
	Returns all children instances of parent that pass specified property criteria.
]]
function DataModelUtils.getChildrenWithCriteria(parent, criteria)
	local results = {}
	for _, child in ipairs(parent:GetChildren()) do
		local isMatch = true
		for property, value in pairs(criteria) do
			local success, result = pcall(function()
				return child[property] == value
			end)
			if not (success and result) then
				isMatch = false
				break
			end
		end
		if isMatch then
			table.insert(results, child)
		end
	end
	return results
end

return DataModelUtils
