from research import *
s=begin(749,'Freeze the three rounding domains','Which row operations and domains may be compared?',{},['File51a §§3.4,16.1–16.2; File18 regular tables'])
p=json.loads((ROOT/'prep/rounded_transfer_inputs.json').read_text())
a=artifact('model/rounding_inputs.json',json.dumps(p,indent=2)+'\n')
counts={k:len(v) for k,v in p['native_rows'].items()}
finish(s,{'packet':a,'row_counts':counts,'operations':['Q(b) regular births','Q(b)+Q(r) theoretical regular lifespan','Q(L) cumulative lifespan'],'restrictions':['SP inclusive counts retain count type','Jacob b=91 belongs to Joseph collateral','four final b inputs withheld']},'Rounded is three typed row operations, followed by path accumulation. A missing or collateral begetting input cannot become a trunk edge.','Reconstruct both MT lifespan operators over every admitted row.',{'counts':list(counts.values())==[26,27,26],'withheld':sum(x['begetting'] is None for x in p['native_rows']['MT_native_OFF'])==4})
