protected static function parseScheme(array $options)
    {
        $weight = Util::pullFromArray($options, 'weight');
        $backup = Util::pullFromArray($options, 'backup') ? 'backup' : '';
        $props = array_filter(array_values($options), function ($prop) {
            return is_numeric($prop) || is_string($prop);
        });

        $options['scheme'] = implode(' ', $props) . " $weight $backup";

        return $options;
    }