public static function mergeProps($mergeStack, $options = array())
    {
        $merged = array();
        while ($mergeStack) {
            $props = \array_shift($mergeStack);
            $props = self::moveShortcuts($props);
            $props = self::mergeClassesPrep($merged, $props);
            $props = self::classnamesToArray($props);
            $merged = ArrayUtil::mergeDeep($merged, $props, $options);
        }
        return $merged;
    }