,
* [ ,
* [ , , , , ], ..
* ], ..
* ]
* Where:
* human-readable title of the filter box
* human-readable name of the category. ignored if there's only one category
* code of this field, refers to the in the filter format. Empty string for just a
* human-readanle name of the field. Empty to not display a label. Space for always-enabled items (without checkbox)
* tag() object, or an array of tag() objects
* function reference. argument: ; must return data to be used in the filter format
* function reference, argument: , data from filter format; must update the contents with the passed data
*
* Filter string format:
* -~.-.-~
* Where:
* = [a-z0-9]+
* = [a-zA-Z0-9_]+ and any UTF-8 characters not in the ASCII range
* Escaping of the :
* "_"
* Where is the decimal index to the following array:
* _ ! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ ` { | } ~
* For boolean fields, the is either 0 or 1.
*/
var fil_cats; // [