cases: fixes x :: "'b bro \<times> 'b \<times> 'b bro" obtains t1 :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" where "x = (N1 t1__, a1__, N1 t2__)"   | t1 :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" and a2 :: "'b" and t3 :: "'b bro" and a3 :: "'b" and t4 :: "'b bro" where "x = (N1 (N1 t1a__), a1a__, N2 (N1 t2a__) a2__ (N2 t3__ a3__ t4__))"   | t1 :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" and a2 :: "'b" and t3 :: "'b bro" and a3 :: "'b" and t4 :: "'b bro" where "x = (N1 (N1 t1b__), a1b__, N2 (N2 t2b__ a2a__ t3a__) a3a__ (N1 t4a__))"   | t1 :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" and a2 :: "'b" and t3 :: "'b bro" and a3 :: "'b" and t4 :: "'b bro" and a4 :: "'b" and t5 :: "'b bro" where "x = (N1 (N1 t1c__), a1c__, N2 (N2 t2c__ a2b__ t3b__) a3b__ (N2 t4b__ a4 t5__))"   | t1 :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" and a2 :: "'b" and t3 :: "'b bro" and a3 :: "'b" and t4 :: "'b bro" where "x = (N2 (N1 t1d__) a1d__ (N2 t2d__ a2c__ t3c__), a3c__, N1 (N1 t4c__))"   | t1 :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" and a2 :: "'b" and t3 :: "'b bro" and a3 :: "'b" and t4 :: "'b bro" where "x = (N2 (N2 t1e__ a1e__ t2e__) a2d__ (N1 t3d__), a3d__, N1 (N1 t4d__))"   | t1 :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" and a2 :: "'b" and t3 :: "'b bro" and a3 :: "'b" and t4 :: "'b bro" and a5 :: "'b" and t5 :: "'b bro" where "x = (N2 (N2 t1f__ a1f__ t2f__) a2 (N2 t3 a3 t4), a5, N1 (N1 t5))"   | a1 :: "'b" and t2 :: "'b bro" where "x = (N0, a1g__, t2g__)"   | va :: "'b" and vb :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" where "x = (N2 N0 va__ vb__, a1h__, t2h__)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and a1 :: "'b" and t2 :: "'b bro" where "x = (N2 (N2 vc__ vd__ ve__) vaa__ N0, a1i__, t2i__)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" and a1 :: "'b" where "x = (N2 (N2 vca__ vda__ vea__) vab__ (N2 v__ vf__ vg__), a1j__, N0)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" and a1 :: "'b" where "x = (N2 (N2 vcb__ vdb__ veb__) vac__ (N2 vh__ vfa__ vga__), a1k__, N1 N0)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" and a1 :: "'b" and vh :: "'b bro" and vi :: "'b" and vj :: "'b bro" where "x = (N2 (N2 vcc__ vdc__ vec__) vad__ (N2 vi__ vfb__ vgb__), a1l__, N1 (N2 vha__ via__ vj__))"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" and a1 :: "'b" and vh :: "'b" where "x = (N2 (N2 vcd__ vdd__ ved__) vae__ (N2 vk__ vfc__ vgc__), a1m__, N1 (L2 vhb__))"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" and a1 :: "'b" and vh :: "'b bro" and vi :: "'b" and vj :: "'b bro" and vk :: "'b" and vl :: "'b bro" where "x = (N2 (N2 vce__ vde__ vee__) vaf__ (N2 vl__ vfd__ vgd__), a1n__, N1 (N3 vhc__ vib__ vja__ vka__ vla__))"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" and a1 :: "'b" and vb :: "'b bro" and vh :: "'b" and vi :: "'b bro" where "x = (N2 (N2 vcf__ vdf__ vef__) vag__ (N2 vm__ vfe__ vge__), a1o__, N2 vba__ vhd__ vic__)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" and a1 :: "'b" and vb :: "'b" where "x = (N2 (N2 vcg__ vdg__ veg__) vah__ (N2 vn__ vff__ vgf__), a1p__, L2 vbb__)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" and a1 :: "'b" and vb :: "'b bro" and vh :: "'b" and vi :: "'b bro" and vj :: "'b" and vk :: "'b bro" where "x = (N2 (N2 vch__ vdh__ veh__) vai__ (N2 vo__ vfg__ vgg__), a1q__, N3 vbc__ vhe__ vid__ vjb__ vkb__)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b" and a1 :: "'b" and t2 :: "'b bro" where "x = (N2 (N2 vci__ vdi__ vei__) vaj__ (L2 vp__), a1r__, t2j__)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" and vh :: "'b" and vi :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" where "x = (N2 (N2 vcj__ vdj__ vej__) vak__ (N3 vq__ vfh__ vgh__ vhf__ vie__), a1s__, t2k__)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" where "x = (N2 (N2 vck__ vdk__ vek__) val__ vbd__, a1t__, N0)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" where "x = (N2 (N2 vcl__ vdl__ vel__) vam__ vbe__, a1u__, N1 N0)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" and vf :: "'b bro" and vg :: "'b" and vh :: "'b bro" where "x = (N2 (N2 vcm__ vdm__ vem__) van__ vbf__, a1v__, N1 (N2 vfi__ vgi__ vhg__))"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" and vf :: "'b" where "x = (N2 (N2 vcn__ vdn__ ven__) vao__ vbg__, a1w__, N1 (L2 vfj__))"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" and vf :: "'b bro" and vg :: "'b" and vh :: "'b bro" and vi :: "'b" and vj :: "'b bro" where "x = (N2 (N2 vco__ vdo__ veo__) vap__ vbh__, a1x__, N1 (N3 vfk__ vgj__ vhh__ vif__ vjc__))"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" where "x = (N2 (N2 vcp__ vdp__ vep__) vaq__ vbi__, a1y__, N2 vr__ vfl__ vgk__)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" and v :: "'b" where "x = (N2 (N2 vcq__ vdq__ veq__) var__ vbj__, a1z__, L2 vs__)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" and vh :: "'b" and vi :: "'b bro" where "x = (N2 (N2 vcr__ vdr__ ver__) vas__ vbk__, a1aa__, N3 vt__ vfm__ vgl__ vhi__ vig__)"   | vc :: "'b" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" where "x = (N2 (L2 vcs__) vat__ vbl__, a1ab__, t2l__)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and vf :: "'b" and vg :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" where "x = (N2 (N3 vct__ vds__ ves__ vfn__ vgm__) vau__ vbm__, a1ac__, t2m__)"   | v :: "'b bro" and va :: "'b" and a1 :: "'b" and t2 :: "'b bro" where "x = (N2 vu__ vav__ N0, a1ad__, t2n__)"   | va :: "'b" and vc :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" where "x = (N2 N0 vaw__ (N1 vcu__), a1ae__, t2o__)"   | vb :: "'b bro" and va :: "'b" and vc :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" where "x = (N2 (N1 vbn__) vax__ (N1 vcv__), a1af__, t2p__)"   | vb :: "'b" and va :: "'b" and vc :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" where "x = (N2 (L2 vbo__) vay__ (N1 vcw__), a1ag__, t2q__)"   | vb :: "'b bro" and vd :: "'b" and ve :: "'b bro" and vf :: "'b" and vg :: "'b bro" and va :: "'b" and vc :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" where "x = (N2 (N3 vbp__ vdt__ vet__ vfo__ vgn__) vaz__ (N1 vcx__), a1ah__, t2r__)"   | v :: "'b bro" and va :: "'b" and vc :: "'b bro" and a1 :: "'b" where "x = (N2 vv__ vbq__ (N1 vcy__), a1ai__, N0)"   | v :: "'b bro" and va :: "'b" and vc :: "'b bro" and a1 :: "'b" where "x = (N2 vw__ vbr__ (N1 vcz__), a1aj__, N1 N0)"   | v :: "'b bro" and va :: "'b" and vc :: "'b bro" and a1 :: "'b" and vd :: "'b bro" and ve :: "'b" and vf :: "'b bro" where "x = (N2 vx__ vbs__ (N1 vdu__), a1ak__, N1 (N2 vdv__ veu__ vfp__))"   | v :: "'b bro" and va :: "'b" and vc :: "'b bro" and a1 :: "'b" and vd :: "'b" where "x = (N2 vy__ vbt__ (N1 vdw__), a1al__, N1 (L2 vdx__))"   | v :: "'b bro" and va :: "'b" and vc :: "'b bro" and a1 :: "'b" and vd :: "'b bro" and ve :: "'b" and vf :: "'b bro" and vg :: "'b" and vh :: "'b bro" where "x = (N2 vz__ vbu__ (N1 vdy__), a1am__, N1 (N3 vdz__ vev__ vfq__ vgo__ vhj__))"   | v :: "'b bro" and va :: "'b" and vc :: "'b bro" and a1 :: "'b" and vb :: "'b bro" and vd :: "'b" and ve :: "'b bro" where "x = (N2 wa__ vbv__ (N1 vew__), a1an__, N2 vbw__ vex__ vey__)"   | v :: "'b bro" and va :: "'b" and vc :: "'b bro" and a1 :: "'b" and vb :: "'b" where "x = (N2 wb__ vbx__ (N1 vez__), a1ao__, L2 vby__)"   | v :: "'b bro" and va :: "'b" and vc :: "'b bro" and a1 :: "'b" and vb :: "'b bro" and vd :: "'b" and ve :: "'b bro" and vf :: "'b" and vg :: "'b bro" where "x = (N2 wc__ vbz__ (N1 vfr__), a1ap__, N3 vfs__ vft__ vfu__ vfv__ vgp__)"   | v :: "'b bro" and va :: "'b" and vc :: "'b" and a1 :: "'b" and t2 :: "'b bro" where "x = (N2 wd__ vfw__ (L2 vfx__), a1aq__, t2s__)"   | v :: "'b bro" and va :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and vf :: "'b" and vg :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" where "x = (N2 we__ vfy__ (N3 vfz__ vgq__ vgr__ vgs__ vgt__), a1ar__, t2t__)"   | v :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" where "x = (N2 wf__ vgu__ vgv__, a1as__, N0)"   | v :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" where "x = (N2 wg__ vgw__ vgx__, a1at__, N1 N0)"   | v :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" and vd :: "'b bro" and ve :: "'b" and vf :: "'b bro" where "x = (N2 wh__ vgy__ vgz__, a1au__, N1 (N2 vhk__ vhl__ vhm__))"   | v :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" and vd :: "'b" where "x = (N2 wi__ vhn__ vho__, a1av__, N1 (L2 vhp__))"   | v :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" and vd :: "'b bro" and ve :: "'b" and vf :: "'b bro" and vg :: "'b" and vh :: "'b bro" where "x = (N2 wj__ vhq__ vhr__, a1aw__, N1 (N3 vhs__ vht__ vhu__ vhv__ vhw__))"   | v :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" where "x = (N2 wk__ vhx__ vhy__, a1ax__, N2 vhz__ vih__ vii__)"   | v :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" and vc :: "'b" where "x = (N2 wl__ vij__ vik__, a1ay__, L2 vil__)"   | v :: "'b bro" and va :: "'b" and vb :: "'b bro" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and vf :: "'b" and vg :: "'b bro" where "x = (N2 wm__ vim__ vin__, a1az__, N3 vio__ vip__ viq__ vir__ vis__)"   | v :: "'b" and a1 :: "'b" and t2 :: "'b bro" where "x = (L2 wn__, a1ba__, t2u__)"   | v :: "'b bro" and va :: "'b" and vb :: "'b bro" and vc :: "'b" and vd :: "'b bro" and a1 :: "'b" and t2 :: "'b bro" where "x = (N3 wo__ vit__ viu__ viv__ viw__, a1bb__, t2)"   | t1 :: "'b bro" and a1 :: "'b" where "x = (t1g__, a1bc__, N0)"   | a1 :: "'b" and v :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (N0, a1bd__, N2 wp__ vix__ viy__)"   | a1 :: "'b" and v :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (N1 N0, a1be__, N2 wq__ viz__ vjd__)"   | vd :: "'b bro" and ve :: "'b" and vf :: "'b bro" and a1 :: "'b" and v :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (N1 (N2 vje__ vjf__ vjg__), a1bf__, N2 wr__ vjh__ vji__)"   | vd :: "'b" and a1 :: "'b" and v :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (N1 (L2 vjj__), a1bg__, N2 ws__ vjk__ vjl__)"   | vd :: "'b bro" and ve :: "'b" and vf :: "'b bro" and vg :: "'b" and vh :: "'b bro" and a1 :: "'b" and v :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (N1 (N3 vjm__ vjn__ vjo__ vjp__ vjq__), a1bh__, N2 wt__ vjr__ vjs__)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and a1 :: "'b" and v :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (N2 vjt__ vju__ vjv__, a1bi__, N2 wu__ vjw__ vjx__)"   | vc :: "'b" and a1 :: "'b" and v :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (L2 vjy__, a1bj__, N2 wv__ vjz__ vkc__)"   | vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and vf :: "'b" and vg :: "'b bro" and a1 :: "'b" and v :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (N3 vkd__ vke__ vkf__ vkg__ vkh__, a1bk__, N2 ww__ vki__ vkj__)"   | t1 :: "'b bro" and a1 :: "'b" and va :: "'b" and vb :: "'b bro" where "x = (t1h__, a1bl__, N2 N0 vkk__ vkl__)"   | a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (N0, a1bm__, N2 (N2 vkm__ vkn__ vko__) vkp__ vkq__)"   | a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (N1 N0, a1bn__, N2 (N2 vkr__ vks__ vkt__) vku__ vkv__)"   | vf :: "'b bro" and vg :: "'b" and vh :: "'b bro" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (N1 (N2 vkw__ vkx__ vky__), a1bo__, N2 (N2 vkz__ vlb__ vlc__) vld__ vle__)"   | vf :: "'b" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (N1 (L2 vlf__), a1bp__, N2 (N2 vlg__ vlh__ vli__) vlj__ vlk__)"   | vf :: "'b bro" and vg :: "'b" and vh :: "'b bro" and vi :: "'b" and vj :: "'b bro" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (N1 (N3 vll__ vlm__ vln__ vlo__ vlp__), a1bq__, N2 (N2 vlq__ vlr__ vls__) vlt__ vlu__)"   | v :: "'b bro" and vf :: "'b" and vg :: "'b bro" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (N2 wx__ vlv__ vlw__, a1br__, N2 (N2 vlx__ vly__ vlz__) vma__ vmb__)"   | v :: "'b" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (L2 wy__, a1bs__, N2 (N2 vmc__ vmd__ vme__) vmf__ vmg__)"   | v :: "'b bro" and vf :: "'b" and vg :: "'b bro" and vh :: "'b" and vi :: "'b bro" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (N3 wz__ vmh__ vmi__ vmj__ vmk__, a1bt__, N2 (N2 vml__ vmm__ vmn__) vmo__ vmp__)"   | t1 :: "'b bro" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" where "x = (t1i__, a1bu__, N2 (N2 vmq__ vmr__ vms__) vmt__ N0)"   | a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" where "x = (N0, a1bv__, N2 (N2 vmu__ vmv__ vmw__) vmx__ (N2 xa__ vmy__ vmz__))"   | a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" where "x = (N1 N0, a1bw__, N2 (N2 vna__ vnb__ vnc__) vnd__ (N2 xb__ vne__ vnf__))"   | vh :: "'b bro" and vi :: "'b" and vj :: "'b bro" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" where "x = (N1 (N2 vng__ vnh__ vni__), a1bx__, N2 (N2 vnj__ vnk__ vnl__) vnm__ (N2 xc__ vnn__ vno__))"   | vh :: "'b" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" where "x = (N1 (L2 vnp__), a1by__, N2 (N2 vnq__ vnr__ vns__) vnt__ (N2 xd__ vnu__ vnv__))"   | vh :: "'b bro" and vi :: "'b" and vj :: "'b bro" and vk :: "'b" and vl :: "'b bro" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" where "x = (N1 (N3 vnw__ vnx__ vny__ vnz__ vl), a1bz__, N2 (N2 vob__ voc__ vod__) voe__ (N2 xe__ vof__ vog__))"   | vb :: "'b bro" and vh :: "'b" and vi :: "'b bro" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" where "x = (N2 voh__ voi__ voj__, a1ca__, N2 (N2 vok__ vol__ vom__) von__ (N2 xf__ voo__ vop__))"   | vb :: "'b" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" where "x = (L2 voq__, a1cb__, N2 (N2 vor__ vos__ vot__) vou__ (N2 xg__ vov__ vow__))"   | vb :: "'b bro" and vh :: "'b" and vi :: "'b bro" and vj :: "'b" and vk :: "'b bro" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" where "x = (N3 vox__ voy__ voz__ vj vk, a1cc__, N2 (N2 vpc__ vpd__ vpe__) vpf__ (N2 xh__ vpg__ vph__))"   | t1 :: "'b bro" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b" where "x = (t1j__, a1cd__, N2 (N2 vpi__ vpj__ vpk__) vpl__ (L2 xi__))"   | t1 :: "'b bro" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and va :: "'b" and v :: "'b bro" and vf :: "'b" and vg :: "'b bro" and vh :: "'b" and vi :: "'b bro" where "x = (t1k__, a1ce__, N2 (N2 vpm__ vpn__ vpo__) vpp__ (N3 xj__ vpq__ vpr__ vps__ vi))"   | t1 :: "'b bro" and a1 :: "'b" and vc :: "'b" and va :: "'b" and vb :: "'b bro" where "x = (t1l__, a1cf__, N2 (L2 vpu__) vpv__ vpw__)"   | t1 :: "'b bro" and a1 :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and vf :: "'b" and vg :: "'b bro" and va :: "'b" and vb :: "'b bro" where "x = (t1m__, a1cg__, N2 (N3 vpx__ vpy__ vpz__ vqa__ vqb__) vqc__ vqd__)"   | t1 :: "'b bro" and a1 :: "'b" and v :: "'b bro" and va :: "'b" where "x = (t1n__, a1ch__, N2 xk__ vqe__ N0)"   | a1 :: "'b" and v :: "'b bro" and va :: "'b" and vc :: "'b bro" where "x = (N0, a1ci__, N2 xl__ vqf__ (N1 vqg__))"   | a1 :: "'b" and v :: "'b bro" and va :: "'b" and vc :: "'b bro" where "x = (N1 N0, a1cj__, N2 xm__ vqh__ (N1 vqi__))"   | vd :: "'b bro" and ve :: "'b" and vf :: "'b bro" and a1 :: "'b" and v :: "'b bro" and va :: "'b" and vc :: "'b bro" where "x = (N1 (N2 vqj__ vqk__ vql__), a1ck__, N2 xn__ vqm__ (N1 vqn__))"   | vd :: "'b" and a1 :: "'b" and v :: "'b bro" and va :: "'b" and vc :: "'b bro" where "x = (N1 (L2 vqo__), a1cl__, N2 xo__ vqp__ (N1 vqq__))"   | vd :: "'b bro" and ve :: "'b" and vf :: "'b bro" and vg :: "'b" and vh :: "'b bro" and a1 :: "'b" and v :: "'b bro" and va :: "'b" and vc :: "'b bro" where "x = (N1 (N3 vqr__ vqs__ vqt__ vqu__ vh), a1cm__, N2 xp__ vqw__ (N1 vqx__))"   | vb :: "'b bro" and vd :: "'b" and ve :: "'b bro" and a1 :: "'b" and v :: "'b bro" and va :: "'b" and vc :: "'b bro" where "x = (N2 vqy__ vqz__ vra__, a1cn__, N2 xq__ vrb__ (N1 vrc__))"   | vb :: "'b" and a1 :: "'b" and v :: "'b bro" and va :: "'b" and vc :: "'b bro" where "x = (L2 vrd__, a1co__, N2 xr__ vre__ (N1 vrf__))"   | vb :: "'b bro" and vd :: "'b" and ve :: "'b bro" and vf :: "'b" and vg :: "'b bro" and a1 :: "'b" and v :: "'b bro" and va :: "'b" and vc :: "'b bro" where "x = (N3 vrg__ vrh__ vri__ vrj__ vrk__, a1cp__, N2 xs__ vrl__ (N1 vrm__))"   | t1 :: "'b bro" and a1 :: "'b" and va :: "'b" and vc :: "'b bro" where "x = (t1o__, a1cq__, N2 N0 vrn__ (N1 vro__))"   | t1 :: "'b bro" and a1 :: "'b" and vb :: "'b bro" and va :: "'b" and vc :: "'b bro" where "x = (t1p__, a1cr__, N2 (N1 vrp__) vrq__ (N1 vrr__))"   | t1 :: "'b bro" and a1 :: "'b" and vb :: "'b" and va :: "'b" and vc :: "'b bro" where "x = (t1q__, a1cs__, N2 (L2 vrs__) vrt__ (N1 vru__))"   | t1 :: "'b bro" and a1 :: "'b" and vb :: "'b bro" and vd :: "'b" and ve :: "'b bro" and vf :: "'b" and vg :: "'b bro" and va :: "'b" and vc :: "'b bro" where "x = (t1r__, a1ct__, N2 (N3 vrv__ vrw__ vrx__ vry__ vrz__) vsa__ (N1 vsb__))"   | t1 :: "'b bro" and a1 :: "'b" and v :: "'b bro" and va :: "'b" and vc :: "'b" where "x = (t1s__, a1cu__, N2 xt__ vsc__ (L2 vsd__))"   | t1 :: "'b bro" and a1 :: "'b" and v :: "'b bro" and va :: "'b" and vc :: "'b bro" and vd :: "'b" and ve :: "'b bro" and vf :: "'b" and vg :: "'b bro" where "x = (t1t__, a1cv__, N2 xu__ vse__ (N3 vsf__ vsg__ ve vf vg))"   | t1 :: "'b bro" and a1 :: "'b" and v :: "'b" where "x = (t1u__, a1cw__, L2 xv__)"   | t1 :: "'b bro" and a1 :: "'b" and v :: "'b bro" and va :: "'b" and vb :: "'b bro" and vc :: "'b" and vd :: "'b bro" where "x = (t1, a1, N3 v va vb vc vd)"