private static function getDefaultVisibleLayers(layerInfos:Array):Array { var result:Array = []; for each (var layerInfo:LayerInfo in layerInfos) { if (layerInfo.parentLayerId >= 0 && result.indexOf(layerInfo.parentLayerId) == -1) { // layer is not visible if it's parent is not visible continue; } if (layerInfo.defaultVisibility) { result.push(layerInfo.layerId); } } return result; }