public static function filterData($objectData, $filters = array())
    {
        $result = array();
        $listFilters = array();

        //====================================================================//
        // Process All Single Fields Ids & Store Sorted List Fields Ids
        foreach ($filters as $fieldId) {
            //====================================================================//
            // Explode List Field Id
            $isList = self::isListField($fieldId);
            //====================================================================//
            // Single Field Data Type
            if ((!$isList) && (array_key_exists($fieldId, $objectData))) {
                $result[$fieldId] = $objectData[$fieldId];
            } elseif (!$isList) {
                continue;
            }
            //====================================================================//
            // List Field Data Type
            $listName = $isList['listname'];
            $fieldName = $isList['fieldname'];
            //====================================================================//
            // Check List Data are Present in Block
            if (!array_key_exists($listName, $objectData)) {
                continue;
            }
            //====================================================================//
            // Create List
            if (!array_key_exists($listName, $listFilters)) {
                $listFilters[$listName] = array();
            }
            $listFilters[$listName][] = $fieldName;
        }

        //====================================================================//
        // Process All List Fields Ids Filters
        foreach ($listFilters as $listName => $listFilters) {
            $result[$listName] = self::filterListData($objectData[$listName], $listFilters);
        }

        return $result;
    }