grammar test;
options { k=1 }
digit : '0' | '1';
number : digit digit* ;
expr : (simple | compound) EOF;
simple : number;
compound
//: '()' | '(' expr expr* ('.' expr)? ')' ;
: '(' expr* ')' | '(' expr expr* '.' expr ')';
Z3JhbW1hciB0ZXN0OwoKb3B0aW9ucyB7IGs9MSB9CgpkaWdpdCAJOgkgJzAnIHwgJzEnOwpudW1iZXIgCToJIGRpZ2l0ICBkaWdpdCogOwoKZXhwcgk6CShzaW1wbGUgfCBjb21wb3VuZCkgRU9GOwpzaW1wbGUJOgludW1iZXI7CmNvbXBvdW5kICAgICAKCS8vOgknKCknIHwgJygnIGV4cHIgZXhwciogKCcuJyBleHByKT8gJyknIDsKCToJJygnIGV4cHIqICcpJyB8ICcoJyBleHByIGV4cHIqICcuJyBleHByICcpJzs=