public Parser <string> Name() { return(_p.Surround( _p.String("["), _p.String("]"), () => _p.Many1(_p.NoneOf("]")).Map(cs => new string(cs.ToArray()))) | (() => _p.Fail <string>("label"))); }